Android中permission與uses-permission

<uses-permission>與<permission>之間的區別與用法。

 

<uses-permission>用法:

 
<uses-permission android:name="string" />
爲了保證application的正常運行,需要系統授予app的權限聲明。這個權限是在用戶安裝應用的時候授予的。
android:name的值可以是其他app通過<permission>聲明的,也可以是系統的權限名稱,例如
android.permission.CAMERA或android.permission.READ_CONTACTS等等。
注:uses-permission的權限要求說明,可能會引起app在Android Market中的過濾。
<permission>用法:

 

<permission android:description="string resource"
            android:icon="drawable resource"
            android:label="string resource"
            android:name="string"
            android:permissionGroup="string"
            android:protectionLevel=["normal" | "dangerous" | 
                                "signature" | "signatureOrSystem"] />
 
permission就是自定義權限的聲明,可以用來限制app中特殊組件,特性與app內部或者和其他app之間訪問。
寫了一個引用自定義權限的例子,在安裝app的時候,提示權限:
自定義權限如下:

<permission android:label=”自定義權限”
    android:description=”@string/hello”
    android:name=”com.example.project.PERMITTED_ACTION”
    android:protectionLevel=”normal”
    android:icon=”@drawable/ic_launcher”>
</permission>

android:label:權限名字,顯示給用戶的,值可是一個string數據,例如這裏的“自定義權限”。

android:description:比label更長的對權限的描述。值是通過resource文件中獲取的,不能直接寫string值,例如這裏的”@string/hello”。

android:name:權限名字,如果其他app引用該權限需要填寫這個名字。

android:protectionLevel:權限級別,分爲4個級別:

normal:低風險權限,在安裝的時候,系統會自動授予權限給application。

dangerous:高風險權限,系統不會自動授予權限給app,在用到的時候,會給用戶提示。

signature:簽名權限,在其他app引用聲明的權限的時候,需要保證兩個app的簽名一致。這樣系統就會自動授予權限給第三方app,而不提示給用戶。

signatureOrSystem:這個權限是引用該權限的app需要有和系統同樣的簽名才能授予的權限,一般不推薦使用。



轉載自:http://blog.csdn.net/qqbbtt/article/details/8017516

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章