Android手机获取权限问题
来源:互联网 发布:带牛熊先知软件 编辑:程序博客网 时间:2024/05/18 03:56
今天在这里对Android手机权限问题给出了一个小示例,如果读者看了以后觉得内容存在什么问题,请提出您宝贵的建议和意见。
以下就是Android获取手机权限的方法,这里使用的例子是使用的”android.permission.READ_CONTACTS“权限。
第1步:添加权限
<!--1.在Manifest文件中添加权限--> <uses-permission android:name="android.permission.READ_CONTACTS"/>
第2步:查看权限状态
//2.检查所需权限的授权状态
int permissionCheck = ContextCompat.checkSelfPermission(this, Manifest.permission.READ_CONTACTS);
//3.判断所需权限是否已授权
if (permissionCheck != PackageManager.PERMISSION_GRANTED){
//4.若所需权限未授权,请求授权
ActivityCompat.requestPermissions(this,newString[]{Manifest.permission.READ_CONTACTS},REQUEST_READ_CONTACTS);
}else {
//读取联系人的方法
readContacts();
}
第3步:根据授权结果,执行相应的操作
//5.授权结果,通过ActivityCompat.onRequsetPermissionsResult回调授权结果,判断是否授权
@Override
public void onRequestPermissionsResult(intrequestCode,@NonNullString[] permissions,@NonNullint[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
switch (requestCode){
case REQUEST_READ_CONTACTS:
if ((grantResults.length>0) && grantResults[0] == PackageManager.PERMISSION_GRANTED){
//读取联系人的方法
readContacts();
}
break;
default:
break;
}
}
备注:
1:以上内容中使用的方法
//读取联系人的方法
private void readContacts() {
//读取联系人
Cursor cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,null,null,null);
SimpleCursorAdapter testAdapter = new SimpleCursorAdapter(this, R.layout.list_item, cursor,newString[
{ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,ContactsContract.CommonDataKinds.Phone.NUMBER},
new int[]{R.id.list_name,R.id.list_phone});
mListv = (ListView) findViewById(R.id.mlistv);
mListv.setAdapter(testAdapter);
}
2:ActivityCompat.requestPermissions方法在被调用后,系统会弹出一个权限申请框,这个选择框无法更改: 如下图所示:
此时,activity会调用onPause()方法,用户做了选择之后,对话框消失,onResume()方法又执行。
- Android手机获取权限问题
- Android编程获取手机root权限问题
- 获取android手机root权限
- Android手机动态获取权限
- android 手机原机获取root权限
- Android编程获取手机root权限
- android手机获取root权限详细教程
- 如何获取android手机的root权限?
- android手机remount没有root权限问题
- Android关于华为手机的权限问题
- ###*android手机6.0后权限问题*
- Android 手机6.0 定位权限问题
- h5 获取手机权限
- 关于小米6.0以上系统手机动态获取权限问题
- 在Android中快速获取手机的高级权限
- Android 获取手机所有应用包名以及权限
- Android手机root权限的判断与获取
- Android手机获取root权限,实现关机重启
- iOS之《Effective Objective-C 2.0》读书笔记(45)
- web 基础
- (六)JavaScript关于浏览器-promise和canvas
- 作业
- spring 和 mybatis 整合过程 (包含分页)
- Android手机获取权限问题
- Windows平台OGG单向数据同步笔记(一)
- Android Studio学习基础篇三
- Spark机器学习笔记(2)--构建基于Spark的推荐引擎
- [UVA] 11427 玩纸牌 期望dp
- NLP中关键词的提取
- 初步了解NVMe
- docker网络配置方法总结
- lua os.time() 和os.date()