アンドリュースダイナミックアクセス要求

アンドリュースダイナミックアクセス要求

Androidの開発では、我々はいくつかの権利は、我々はアンドロイド6.0の後に、これらの権限を使用する際、ユーザーにダイナミックに適用する必要があることがある一方で、許可を申請したManifest.xml文書内のいくつかの権威を書くことができます。
具体的な分類はここを参照してください:
動的にする必要があるもののために適用する許可のためのAndroidアプリケーションを

現在のコードでも許可を適用する方法を見てみましょう。

   if(ContextCompat.checkSelfPermission(this, Manifest.permission.${PermissionnName})!=PackageManager.PERMISSION_GRANTED)
        {
            //判断用户是否拒绝过这个权限,提示用户手动去设置中给予我们的APP相关权限
            if(ActivityCompat.shouldShowRequestPermissionRationale(this,Manifest.permission.${PermissionnName}))
            {

            }
            else
            {
                //申请这个权限
                ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},MY_PERMISSION_REQUEST_CODE);

            }
        }

コード$以上の権限名{} PermissionnName代表が適用する、オンデマンドで置き換えることができます

その後、我々はまた、APPは、モニターに必要かどうかをユーザーに許可を与える必要があり、私たちは中アンドリュースでこれを行うことができますコールバック関数があります:

    @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        switch (requestCode)
        {
            case MY_PERMISSION_REQUEST_CODE:
            {
                if (grantResults.length>0 && grantResults[0] == PackageManager.PERMISSION_GRANTED)
                {
                    //用户允许了权限
                }
                else
                {
                    //用户拒绝了权限
                }
                break;
            }
        }
    }

これは、することができ、独自のビジネス・ロジックを、動的な権限を付与する工程です。

公開された47元の記事 ウォン称賛15 ビュー10000 +

おすすめ

転載: blog.csdn.net/qq_41525021/article/details/104442352