home ホーム search 検索 -  login ログイン  | reload edit datainfo version cmd icon diff delete  | help ヘルプ

技術/Android/PermissionExamples (v6)

技術/Android/PermissionExamples (v6)

技術 / Android / PermissionExamples (v6)
id: 997 所有者: msakamoto-sf    作成日: 2011-07-10 18:19:33
カテゴリ: Android 

AndroidManifest.xmlでの"<permission>"と"android:permission"属性の使用例+メモ。

サンプルコード

bitbucketにてMercurialで公開:

  • https://bitbucket.org/msakamoto_sf/androidpermissionsamples
    • "PermissionTest1" : Activity, BroadcastReceiver, Service, ContentProviderを用意しているアプリ。
    • "PermissionTest2" : PermissionTest1の各コンポーネントを呼び出すアプリ。AndroidManifest.xmlで必要な"<uses-permission>"を定義済み。PermissionTest1と同じ証明書で署名する。
    • "PermissionTest3" : PermissionTest2と内容は同じだが、PermissionTest1,2と異なる証明書で署名する。

結果

詳細:

全体傾向:

  1. android:exported="false"の非公開は呼べない。
  2. android:exported省略時は、IntentFilterが無ければ非公開、IntenFilterが有れば公開扱い。
    1. ReceiverについてはIntentFilter有りのexported無しが非公開扱いになっており、これだけ予想と異なっていた。
  3. Permissionがある場合は、上記の判断 AND Permissionのレベルに応じた判定となる。
    1. PermissionTest2ではSignatureレベルの公開扱いは呼べる、PermissionTest3ではSignatureレベルは全て呼べない。

ContentProviderについて:

  1. API Level 8 ではexported属性の指定が無視され、公開扱いになってしまう。

参考資料

ContentProviderとpermissionの参考資料:



プレーンテキスト形式でダウンロード
現在のバージョン : 6
更新者: msakamoto-sf
更新日: 2011-11-25 19:21:36
md5:acb9a5904b1795c87dd0c79f5d631439
sha1:c0aa97287023afbb22c8802ef87082c036567292
コメント
コメントを投稿するにはログインして下さい。