zoukankan      html  css  js  c++  java
  • Android添加代码检查权限

    1,首先创建一个项目,然后创建一个类,hello.java

    public class hello {
    
    
        public static final String PERMISSION_SAY_HELLO = "examples.ouc.com.checkpermissioncode.permission.SAY_HELLO";
    
        public static void sayhello(Context context){
    
            //检查代码是否拥有这个权限
            int checkResult = context.checkCallingOrSelfPermission(PERMISSION_SAY_HELLO);
           
            //if(!=允许),抛出异常
            if (checkResult!= PackageManager.PERMISSION_GRANTED){
                throw new SecurityException("执行sayhello方法需要权限");
            }
         //如果允许了,就输出下面这句话
            System.out.println("Hello 极客学院");
        }
    }

    2,在AndroidManifest中添加permission

     <permission android:name="examples.ouc.com.checkpermissioncode.permission.SAY_HELLO"/>

    3,在MainActivity调用hello中的sayhello方法

    public class MainActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            hello.sayhello(this);
    
        }
    }

    4,我们这时候运行app是无法运行的,如下图

    我们查看run中给出的原因

    发现,我们并没有获得权限,为什么呢?我们虽然添加了一个权限,但是并没有给用户添加权限

    5,因此我们需要给用户添加权限:

        在AndroidManifest中再添加上下面的第二行代码

     <permission android:name="examples.ouc.com.checkpermissioncode.permission.SAY_HELLO"/>
    
        <uses-permission android:name="examples.ouc.com.checkpermissioncode.permission.SAY_HELLO"/>

    这时候我们再次运行app,会发现app成功打开,再去run中查看消息,会发现,我们成功输出了下面的这句话

  • 相关阅读:
    玩转持续化集成之Jenkins
    常用的免费移动应用测试框架推荐
    没有学过功夫能否练神功
    Android APP性能测试(下)
    Android APP性能测试(上)
    python-mongodb简单封装
    python使用协程完成批量模拟支付
    python多进程完成模拟支付
    python多线程完成模拟支付请求
    python-自动登录禅道
  • 原文地址:https://www.cnblogs.com/icyhusky/p/6020672.html
Copyright © 2011-2022 走看看