想给一个android程序添加权限。

想给一个android程序添加权限。,第1张

添加权限是在编译生成APK包前,也就是在源代码里添加权限。

找到源代码工程里的AndroidManifest.xml文件打开。

把<uses-permission android:name="android.permission.WAKE_LOCK"/>加入去,如图

一般你添加了权限,在第一次安装运行时就会提醒,你也可以强制,比如照相机权限检查

final private int REQUEST_CODE_ASK_PERMISSIONS = 123//权限请求码 //在执行扫描二维码之前检查是否具有打开照相机的权限

try {

     int hasWriteContactsPermission =context.checkSelfPermission(Manifest.permission.CAMERA)//权限检查

     if (hasWriteContactsPermission != PackageManager.PERMISSION_GRANTED) {

          requestPermissions(new String[] {Manifest.permission.CAMERA},

                  REQUEST_CODE_ASK_PERMISSIONS)

              return//没有权限,结束

     }else {

           //做自己的 *** 作

     }

 } catch (Exception e) {

      e.printStackTrace()

      ToastUtil.defaultToast(getContext().getApplicationContext(), "权限异常")

 } //回调函数,无论用户是否允许都会调用执行此方法@Override

    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {

        switch (requestCode) {

            case REQUEST_CODE_ASK_PERMISSIONS:

                if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {

                    // Permission Granted 用户允许权限 继续执行(我这里执行的是二维码扫描,检查的是照相机权限)

                    Intent intent = new Intent(getActivity(),

                            CaptureActivity.class)

                    startActivityForResult(intent, REQUEST_CODE_SCAN)

                } else {

                    // Permission Denied 拒绝

                    ToastUtil.defaultToast(context.getApplicationContext(),"获取权限失败,无法扫描")

                }

                break

            default:

                super.onRequestPermissionsResult(requestCode, permissions, grantResults)

        }

    }


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11875782.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存