ソース掲示板




すべてから検索

キーワード   条件 表示 現行ログ 過去ログ トピックス 名前 本文

  メンテナンス 前画面に戻る

対象スレッド 件名: Android 6.0 : 複数の Runtime Permission の対応を簡潔に実行するクラス( CheckMyPermission )
名前: lightbox
処理選択
パスワード

件名 Android 6.0 : 複数の Runtime Permission の対応を簡潔に実行するクラス( CheckMyPermission )
名前 lightbox
コメント
@HTML
<a href="http://winofsql.jp/download/permission_170610.zip" target="_blank"><img src="http://winofsql.jp/image/lightbox_download.jpg" style="border: solid 0px #000000" /></a>
@HEND

@SHOW
解凍して、プロジェクトの "app\src\main\java" の下に com フォルダをコピーします

▼ 使用方法は以下の MainActivity のソースをごらん下さい

http://logicalerror.seesaa.net/article/450623729.html(Android 6.0 エミュレータで 複数の Runtime Permission の対応を簡潔に吸収するクラス)
@END

@DIV
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 必要なパーミッションのリスト
        ArrayList<MyPermission> myPermission_list = new ArrayList<MyPermission>();
        myPermission_list.add(new MyPermission(Manifest.permission.CAMERA,100));
        myPermission_list.add(new MyPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE,101));
        // Runtime Permission 用のクラスのインスタンス
        checkMyPermission = new CheckMyPermission(MainActivity.this,myPermission_list);
        // 全ての必要なパーミッションが既に許可されていた場合
        if ( checkMyPermission.checkPermission() ) {
            cameraSettings();
        }
    }

    @Override
    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
        // 全ての必要なパーミッションが許可された場合
        if ( checkMyPermission.checkPermission( requestCode,  grantResults )) {
            // onCreate で初期処理できるように、MainActivity をリスタート
            Intent intent = getIntent();
            finish();
            startActivity(intent);
        }
    }
@END