k4b
k4b

Reputation: 215

Determining the level of Android permission

I have some Android permissions which I would like to know to which permision PROTECTION LEVEL they belong. Does anybody know how can this be checked? For example I need to know the PROTECTION LEVEL of android.permission.RECEIVE_BOOT_COMPLETED permission, but I would like to check many more.

EDIT:

I see that I didn't put it clearly: What I mean is not an API level with which permission was introduced, but permission protection level, one of four: Normal, Dangerous, Signeture, Signature Or System. It determines for example how this permission is presented to user during the application installation. How can I check to which protection level certain permission belongs?

Upvotes: 8

Views: 6260

Answers (5)

Elodie E2
Elodie E2

Reputation: 580

You can find the protection level in the permission documentation

android-website

Upvotes: 0

Android QS
Android QS

Reputation: 416

A list of default permissions with the associated protection levels can be found in the latest source here:

https://github.com/android/platform_frameworks_base/blob/master/core/res/AndroidManifest.xml

Example:

<permission android:name="android.permission.INTERNET"
    android:permissionGroup="android.permission-group.NETWORK"
    android:protectionLevel="dangerous"
    android:description="@string/permdesc_createNetworkSockets"
    android:label="@string/permlab_createNetworkSockets" />

Keep in mind they could be changed by the OEM.

Upvotes: 8

4A.
4A.

Reputation: 51

getPackageManager().getPermissionInfo(name,  0).protectionLevel

Upvotes: 5

Javi Teje
Javi Teje

Reputation: 66

In this link you can see all the permissions of android. The level you mark it here:

Upvotes: 1

user370305
user370305

Reputation: 109257

For Android-Permission..

  • To enforce permissions, various parts of the system invoke a permission validation mechanism to check whether a given application has a specied permission. The permission validation mechanism is implemented as part of the trusted system process, and invocations of the permission validation mechanism are spread throughout the API. There is no centralized policy for checking permissions when an API is called. Rather, mediation is contingent on the correct placement of permission validation calls.

    enter image description here

  • Permission checks are placed in the API implementation in the system process. When necessary, the API implementation calls the permission validation mechanism to check that the invoking application has the necessary permissions. In some cases, the API library may also redundantly check these permissions, but such checks cannot be relied upon: applications can circumvent them by directly communicating with the system process via the RPC stubs. Permission checks therefore should not occur in the API library. In- stead, the API implementation in the system process should invoke the permission validation mechanism.

Also just go through with this documents for more info Android-Permission

Upvotes: 0

Related Questions