diff options
author | Suprabh Shukla <suprabh@google.com> | 2017-06-19 12:09:37 -0700 |
---|---|---|
committer | Vikas Marwaha <vikasmarwaha@google.com> | 2017-07-27 21:28:52 +0000 |
commit | 432b492300dd9004c8ada9664a5a804d482557a1 (patch) | |
tree | 68dd9e5e4d5780e47d198b394ca9f0ef9135a2e4 /4_application-packaging | |
parent | cae42c641085d3891f75479e5024e3fd0de26281 (diff) | |
download | cdd-432b492300dd9004c8ada9664a5a804d482557a1.tar.gz |
CDD: Add reqs for new per-app unknown sources install permission.
Android 8.0 introduces a more granular control for installing
appplication packages from unknown sources by adding a new
`REQUEST_INSTALL_PACKAGES` permission.
It also introduces a new settings menu to allow the user to
grant/revoke this permission.
Test: N/A
Bug: 38463484
Change-Id: I52fa0a0665395c0f8e50d700b852ee97958af382
Diffstat (limited to '4_application-packaging')
-rw-r--r-- | 4_application-packaging/4_0_intro.md | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/4_application-packaging/4_0_intro.md b/4_application-packaging/4_0_intro.md index 2fe2d2f..ad2be7a 100644 --- a/4_application-packaging/4_0_intro.md +++ b/4_application-packaging/4_0_intro.md @@ -23,3 +23,21 @@ permission. The only exceptions are the system package verifier app handling [PACKAGE_NEEDS_VERIFICATION](https://developer.android.com/reference/android/content/Intent.html#ACTION_PACKAGE_NEEDS_VERIFICATION) intent and the storage manager app handling [ACTION_MANAGE_STORAGE](https://developer.android.com/reference/android/os/storage/StorageManager.html#ACTION_MANAGE_STORAGE) intent. + +Device implementations MUST NOT install application packages from unknown +sources, unless the app that [requests the installation](https://developer.android.com/reference/android/content/Intent.html#ACTION_INSTALL_PACKAGE) +meets all the following requirements: + +* It MUST declare the [`REQUEST_INSTALL_PACKAGES`](http://developer.android.com/reference/android/Manifest.permission.html#REQUEST_INSTALL_PACKAGES) + permission or have the `android:targetSdkVersion` set at 24 or lower. +* It MUST have been granted permission by the user to install apps from + unknown sources. + +Device implementations MUST have an activity that handles the +[`android.settings.MANAGE_UNKNOWN_APP_SOURCES`](http://developer.android.com/reference/android/provider/Settings.html#ACTION_MANAGE_UNKNOWN_APP_SOURCES) +intent. They SHOULD provide a user affordance to grant/revoke the permission to +install apps from unknown sources per application, but MAY choose to implement +this as a no-op and return `RESULT_CANCELED` for [`startActivityForResult()`](http://developer.android.com/reference/android/app/Activity.html#startActivityForResult%28android.content.Intent, int%29), +if the device implementation does not want to allow users to have this choice. +However even in such cases, they SHOULD indicate to the user why there is no such +choice presented. |