Android permission属于Android的安全层面的东西 使用此方法,可以保护你的content provider,保护你的数据!
permission的定义解释见: http://developer.android.com/guide/topics/manifest/permission-element.html
系统所有的permission定义在这里:\data\system\packages.xml ,可以查看每个permission的保护级别
permission的定义一般在Androidmanifest.xml
<!-- lang: xml -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.design.hello"
android:versionCode="1">
<!-- permisiion的定义 ,如下signature 表示需要发起方是用同样证书签名的-->
<permission xmlns:android="http://schemas.android.com/apk/res/android"
android:name="com.design.permission.USE_HONG_STACK"
android:protectionLevel="signature" />
<!-- permisiion的使用 , 表示发起方必须要有此permission才行-->
<receiver android:name="HelloReceiver"
android:permission="com.design.permission.USE_HONG_STACK">
<intent-filter>
<action android:name="com.android.design.NOTIFY" />
</intent-filter>
</receiver> </manifest>
MediaProvider的例子:
<!-- lang: xml -->
<provider android:name="MediaProvider" android:authorities="media"
android:multiprocess="false" android:exported="true">
<grant-uri-permission android:pathPrefix="/external/" />
<path-permission
android:pathPrefix="/external/"
android:readPermission="android.permission.READ_EXTERNAL_STORAGE"
android:writePermission="android.permission.WRITE_EXTERNAL_STORAGE" />
</provider>
\system\etc\permissions\platform.xml 给meida, shell等系统组件预指定permission