安卓运行时权限处理——以打电话为例
如果想要实现点击一个图标就可以直接调起电话打给某人,可以这样实现:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED){
ActivityCompat.requestPermissions(MainActivity.this,new String[]{Manifest.permission.CALL_PHONE},1);
}
call();
}
private void call(){
try {
Intent intent = new Intent(Intent.ACTION_CALL);//如果想实现在手机内置拨号页面打电话,把ACTION_CALL改成ACTION_DIAL
intent.setData(Uri.parse("tel:###"));
startActivity(intent);
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {//处理权限请求
switch (requestCode){
case 1:
if (grantResults.length >0 && grantResults[0] == PackageManager.PERMISSION_GRANTED){
call();
}
else {
Toast.makeText(this,"权限不允许",Toast.LENGTH_SHORT).show();
}
}
}
同时在AndroidManifest.xml需要添加权限:
<uses-permission android:name="android.permission.CALL_PHONE"/>
这样就可以实现直接点击桌面的一个小图标然后给某人直接打电话了。
博客介绍了安卓运行时权限处理,以点击图标直接打电话为例,说明要实现此功能,需在AndroidManifest.xml添加相应权限,添加后即可通过点击桌面图标直接拨打电话。

4081

被折叠的 条评论
为什么被折叠?



