当前位置: 首页 > news >正文

重庆品牌服装网站建设广东东莞大益队

重庆品牌服装网站建设,广东东莞大益队,亚马逊营业执照怎么办理,互联网网站seo优化1.引入依赖: implementation pub.devrel:easypermissions:3.0.0 2.在BaseActivity处理统一的结果回调和请求Code 核心内容: (1)处理Activity本身继承的方法onRequestPermissionsResult (2)实现接口EasyPermissions.PermissionCallbacks来接收请求结果 (3)定义申请权…

1.引入依赖:

implementation 'pub.devrel:easypermissions:3.0.0'

2.在BaseActivity处理统一的结果回调和请求Code

核心内容:

        (1)处理Activity本身继承的方法onRequestPermissionsResult        

        (2)实现接口EasyPermissions.PermissionCallbacks来接收请求结果

        (3)定义申请权限跳转带出去的Code(Int类型,合法范围0-255)

        (4)定义PermissionsCollBack是对结果返回的进一步简化 (非必须)

/***Author:XingHai.Zhao*Purpose: All Activity Father*/
abstract class BaseActivity : AppCompatActivity() , EasyPermissions.PermissionCallbacks{var mPermCodeBLE: Int = 11var mPermCodeAUDIO: Int = 12// 用户给予相关权限成功后的回调override fun onRequestPermissionsResult(requestCode: Int,permissions: Array<String>,grantResults: IntArray) {super.onRequestPermissionsResult(requestCode, permissions, grantResults)// 进一步使用 EasyPermissions 处理后续结果EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this)}override fun onPermissionsGranted(requestCode: Int, perms: MutableList<String>) {// 授予权限mPermissionsCollBack?.let {it.permissionsYes(requestCode)}}override fun onPermissionsDenied(requestCode: Int, list: List<String?>) {// 请求权限被拒mPermissionsCollBack?.let {it.permissionsNo(requestCode)}}var mPermissionsCollBack: PermissionsCollBack? = nullinterface PermissionsCollBack {fun permissionsYes(code: Int) //获取授权成功fun permissionsNo(code: Int) //获取授权成功}// 获取蓝牙相关的权限fun getBlePerm(): Array<String> {return when {Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> arrayOf(Manifest.permission.BLUETOOTH_SCAN,Manifest.permission.BLUETOOTH_CONNECT,Manifest.permission.BLUETOOTH_ADVERTISE,Manifest.permission.ACCESS_FINE_LOCATION)Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q -> arrayOf(Manifest.permission.BLUETOOTH_ADMIN,Manifest.permission.ACCESS_FINE_LOCATION)else -> arrayOf(Manifest.permission.BLUETOOTH_ADMIN,Manifest.permission.ACCESS_FINE_LOCATION)}}// 获取录音和前台服务权限fun getAudioPerm(): Array<String> {val permissions = mutableListOf<String>()// 添加录音权限permissions.add(Manifest.permission.RECORD_AUDIO)// 根据 Android 版本添加前台服务权限if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {permissions.add(Manifest.permission.FOREGROUND_SERVICE)}return permissions.toTypedArray()}}


3具体请求用蓝牙举例:

        //权限判断,第一次弹出系统的授权提示框if (EasyPermissions.hasPermissions(this, *getBlePerm())) {if (!BluetoothAdapter.getDefaultAdapter().isEnabled) {//打开蓝牙开关startActivity(Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE))}// 有权限  直接执行---在这里执行下一步操作 用蓝牙举例的话 这里要开启蓝牙搜索} else {// 没有权限,进行权限请求EasyPermissions.requestPermissions(this,getString("需要赋予相关权限,方能正常使用该功能!"),mPermCodeBLE,*getBlePerm())}mPermissionsCollBack = object :PermissionsCollBack{override fun permissionsYes(code: Int) {---在这里执行下一步操作 用蓝牙举例的话 这里要开启蓝牙搜索}override fun permissionsNo(code: Int) {}}
 

http://www.dinnco.com/news/64527.html

相关文章:

  • 怎样建个人网站宁波seo推广优化
  • 响应式网站建设制作需要注意什么沈阳seo技术
  • 免费做deal的网站百度知道下载
  • 广州网站建设(信科分公司)简述网站推广的方式
  • 没有域名网站吗郑州千锋教育培训机构怎么样
  • 武汉开发网站建设自己怎么给网站做优化排名
  • wordpress帝国哪个安全杭州谷歌seo公司
  • 百度搜索到自己的网站宁波seo运营推广平台排名
  • 深圳网站外包搜索关键词排名查询
  • 域名转出过程网站能打开吗广安seo外包
  • 二手车网站模板能打开任何网站浏览器
  • 在淘宝上做代销哪个网站好合肥网站优化
  • 专业做域名的网站吗电商代运营收费标准
  • 东莞网站建设排名重庆seo推广服务
  • 门户网站建设和推广哈尔滨网络优化公司有哪些
  • 广州正佳广场老板是谁长沙seo公司排名
  • jsp网站首页那栏怎么做百度手机提高关键词排名
  • 零基础制作公司网站教程自制网页
  • div做网站个人永久免费自助建站
  • 深圳建设资格注册中心网站全国推广优化网站
  • h5的制作步骤鹤壁网站seo
  • 在自己网站建立自己的外链周口网站建设公司
  • 建设多用户网站个人怎么创建网站
  • wordpress首页静态页优化网站的目的
  • 武汉个人做网站必应搜索引擎入口
  • 做网站前端开发的必备软件百度智能建站平台
  • 广州网站建设联系电话网络营销方案策划
  • 哈尔滨做网站sem竞价托管费用
  • 国内简约网站设计流量平台排名
  • 网站最好服务器品牌营销策略分析