Android 6.0ダイナミックアクセスコードの例


Androidシステムは、すべての危険権限をグループ化しています。同じグループに属する危険権限は自動的に統合されて付与され、あるグループの権限を利用する権限を付与されると、アプリケーションはこの権限グループの下のすべての権限を獲得する(Android Manifest.xmlに声明があるという前提で)。
危険権限と権限グループのリストは次の通りです。Android Manifest.xml宣言された危険権限に対応する権限グループは、システムの「設定」->「アプリケーション」-「アプリケーション情報」->「権限」を参照してください。
1、デバイスシステムはAndroid 6.0(API 23)またはより高いバージョンであり、アプリケーションのtarget Sdk Verssionは23またはより高いバージョンである場合、Android Manifest.xmlで宣言された危険な権限に対して、動作時にはユーザーの認証を動的に要求する必要がある。
2、動的権限要求に関する操作のAPIは、android.support.v 4パケットにパッケージ化されており、開始要求権限のActivityは、直接または間接的にandroid.support.v 4.Frame ntActivityを継承する必要がある。
3、直接または間接的にandroid.support.v 4.app.Fragmentを継承するFragmentに権限要求をすることもできます。
まずリストファイルに登録します。
その後、MainActivity.javaで権限を一つのStering配列にカプセル化する。

static final String[] PERMISSION = new String[]{
      Manifest.permission.READ_PHONE_STATE,
      Manifest.permission.WRITE_EXTERNAL_STORAGE,
      Manifest.permission.RECORD_AUDIO,
      Manifest.permission.RECEIVE_BOOT_COMPLETED
  };
次にオンクリアー()の方法にコードを入れます。

if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) {
      //Android 6.0    
      ActivityCompat.requestPermissions(this, PERMISSION, 1);
    } else {
      Toast.makeText(this, "  ", Toast.LENGTH_SHORT).show();
    }
私は通常上記のコードを別の方法に書いて、OneCreate()方法で呼び出します。
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。