宁波网站建设流程图,合肥网页设计就业,虚拟商品购物网站源码,炫酷的编程代码1.添加权限
在AndroidManifest.xml中添加如下权限 uses-permission android:nameandroid.permission.READ_PHONE_STATE/ 2.获取权限
如果你只在清单文件中添加权限却没有在代码中获取权限#xff0c;代码还是会报错的。
报错原因#xff1a; android…1.添加权限
在AndroidManifest.xml中添加如下权限 uses-permission android:nameandroid.permission.READ_PHONE_STATE/ 2.获取权限
如果你只在清单文件中添加权限却没有在代码中获取权限代码还是会报错的。
报错原因 android 6.0以上增加了动态获取权限api需要动态获取手机的权限。弹出对话框询问用户请求用户允许否则就会报错。 解决方法
动态获取手机权限
涉及方法
(1).ContextCompat.checkSelfPermission(NonNull Context context, NonNull String permission) 作用检查应用是否有permission这权限 返回值已经用于返回PERMISSION_GRANTED否则返回PERMISSION_DENIED (2).ActivityCompat.requestPermissions(final NonNull Activity activity, final NonNull String[] permissions, final IntRange(from 0) int requestCode) 作用弹出请求授权对话框 参数permissions是个数组requestCode是授权码要0 代码实现 button1.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {if (ActivityCompat.checkSelfPermission(getApplicationContext(), android.Manifest.permission.READ_PHONE_STATE) ! PackageManager.PERMISSION_GRANTED) {ActivityCompat.requestPermissions((Activity) context,new String[]{android.Manifest.permission.READ_PHONE_STATE},PackageManager.PERMISSION_GRANTED);}else{//获取卡槽1的sim卡信息SubscriptionInfo activeSubscriptionInfo subscriptionManager.getActiveSubscriptionInfo(1);if(activeSubscriptionInfo!null){textView1.setText(activeSubscriptionInfo.toString());}else{Toast.makeText(getApplicationContext(),1null,Toast.LENGTH_SHORT).show();}}}});