Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Pertaining to your questions #1 and #2... There may be differences in behavior depending on what OS the device is using. Many permissions were modified/renamed/created when OS 4.7 was released. For example, here are the permissions I request for OS 4.5:</p> <pre><code>ApplicationPermissions.PERMISSION_FILE_API ApplicationPermissions.PERMISSION_INTER_PROCESS_COMMUNUCATION ApplicationPermissions.PERMISSION_CHANGE_DEVICE_SETTINGS ApplicationPermissions.PERMISSION_EXTERNAL_CONNECTIONS ApplicationPermissions.PERMISSION_INTERNAL_CONNECTIONS ApplicationPermissions.PERMISSION_WIFI ApplicationPermissions.PERMISSION_EMAIL ApplicationPermissions.PERMISSION_HANDHELD_KEYSTORE </code></pre> <p>And here are the permissions I request for OS 4.7:</p> <pre><code>ApplicationPermissions.PERMISSION_FILE_API ApplicationPermissions.PERMISSION_CROSS_APPLICATION_COMMUNICATION ApplicationPermissions.PERMISSION_DEVICE_SETTINGS ApplicationPermissions.PERMISSION_INTERNET ApplicationPermissions.PERMISSION_SERVER_NETWORK ApplicationPermissions.PERMISSION_WIFI ApplicationPermissions.PERMISSION_EMAIL ApplicationPermissions.PERMISSION_SECURITY_DATA, </code></pre> <p>You can see that a number of permissions were renamed. You may need to update your code to be aware of the OS and request specific permissions.</p> <p>For question #3, there is no way to execute any kind of code on-install. The best you can do is make your application 'Auto-run on startup' and perform the check then. However, this might be a worse solution, as the user may become confused by getting a permissions request dialog on startup.</p> <p>The best solution is to make sure you have sufficient privileges every time your application is launched. If not, request all necessary privileges and handle everything as gracefully as possible. If you execute this successfully, your users will only have to deal with the permissions the very first time your application is launched (as long as they don't mess around with them on their own later on).</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload