build
Build the PermissionRequest with all the configurations set. It will also assigns the default values and throw some exceptions if the configuration of this builder isn't a valid one.
Return
instance of PermissionRequest built from these configurations.
Throws
if the permissions or the RuntimePermissionHandlerProvider are not specified.