android6.0 百度导航权限
来源:互联网 发布:软件销售提成比例 编辑:程序博客网 时间:2024/05/20 08:41
android6.0 百度导航权限
android6.0 百度导航权限 百度导航demo貌似没看到6.0权限处理,文档虽然出现了,但是没有详细的代码可参考,或许自己不够认真没发现吧,不管怎么还是自己弄了个权限处理。先看看6.0那些权限需要动态授权。
全部动态授权在这里,也就不难找出百度导航那些需要拿出来进行授权了
下面开始上代码
调用
全部动态授权在这里,也就不难找出百度导航那些需要拿出来进行授权了
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/><uses-permission android:name="android.permission.READ_PHONE_STATE"/><uses-permission android:name="android.permission.RECORD_AUDIO"/><uses-permission android:name="android.permission.CAMERA"/><uses-permission android:name="android.permission.CALL_PHONE"/>
下面开始上代码
调用
/** * 使用SDK前,先进行百度服务授权和引擎初始化。 */ if (android.os.Build.VERSION.SDK_INT >= 23) { showContacts(layoutTile); }else { initNavi(); }下面是导航所需的权限
public void showContacts(View v) { Log.i("tag", "Show contacts button pressed. Checking permissions."); // Verify that all required contact permissions have been granted. if (ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED || ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED || ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED || ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED || ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.PROCESS_OUTGOING_CALLS) != PackageManager.PERMISSION_GRANTED || ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED || ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED || ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) { // Contacts permissions have not been granted. Log.i("tag", "Contact permissions has NOT been granted. Requesting permissions."); requestContactsPermissions(v); } else { // Contact permissions have been granted. Show the contacts fragment. Log.i("tag", "Contact permissions have already been granted. Displaying contact details."); initNavi(); } } private void requestContactsPermissions(View v) { // BEGIN_INCLUDE(contacts_permission_request) if (ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.ACCESS_COARSE_LOCATION) || ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.ACCESS_FINE_LOCATION) || ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.WRITE_EXTERNAL_STORAGE) || ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.READ_PHONE_STATE) || ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.PROCESS_OUTGOING_CALLS) || ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.RECORD_AUDIO) || ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.CAMERA) || ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.CALL_PHONE) ) { // Provide an additional rationale to the user if the permission was not granted // and the user would benefit from additional context for the use of the permission. // For example, if the request has been denied previously. Log.i("tag", "Displaying contacts permission rationale to provide additional context."); // Display a SnackBar with an explanation and a button to trigger the request. Snackbar.make(v, "permission_contacts_rationale", Snackbar.LENGTH_INDEFINITE) .setAction("ok", new View.OnClickListener() { @Override public void onClick(View view) { ActivityCompat .requestPermissions(getActivity(), new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_PHONE_STATE, Manifest.permission.PROCESS_OUTGOING_CALLS, Manifest.permission.RECORD_AUDIO, Manifest.permission.CAMERA, Manifest.permission.CALL_PHONE}, 0); } }) .show(); } else { // Contact permissions have not been granted yet. Request them directly. ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_PHONE_STATE, Manifest.permission.PROCESS_OUTGOING_CALLS, Manifest.permission.RECORD_AUDIO, Manifest.permission.CAMERA, Manifest.permission.CALL_PHONE}, 0); } // END_INCLUDE(contacts_permission_request) } @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { if (requestCode == 0) { if (PermissionUtil.verifyPermissions(grantResults)) { initNavi(); } } else { super.onRequestPermissionsResult(requestCode, permissions, grantResults); } }
1 0
- android6.0 百度导航权限
- 百度地图 android6.0版本权限
- 关于Android6.0 百度定位权限问题
- android6.0,百度地图运行时权限。
- 关于Android6.0 百度定位权限问题
- 百度地图导航Android6.0初始化失败解决方法
- 百度地图SDK-Android6.0动态获取隐私权限
- Android6.0导航栏
- Android6.0权限开发
- Android6.0权限管理
- Android6.0动态权限
- Android6.0权限申请
- android6.0 权限管理
- Android6.0系统权限
- android6.0权限管理
- Android6.0权限管理
- Android6.0动态权限
- Android6.0权限操作
- iOS设计模式-迭代器
- 高绩效团队的打造路径
- librec的使用 how to use librec
- java 注释模板
- HttpTunnel技术介绍
- android6.0 百度导航权限
- Java基础备忘
- thinkphp3.2.3插件控制器使用
- WEB安全:文件上传漏洞
- 52. spring boot日志升级篇—log4j多环境不同日志级别的控制【从零开始学Spring Boot】
- Java虚拟机学习 - 垃圾收集器
- 机器学习(周志华)习题解答1.1-1.3: 理解假设和版本空间
- android studio 中gradle插件retrolambda的使用
- 递归学习第一天:求N的阶乘和N以内数的和