adobe fresco需要访问权限_Android 权限组件设计

ps:打算从简书搬到掘金来了,简书没讨论氛围,发了好久也不见有人讨论,还是掘金人气旺,氛围好,记得16年刚注册那会还不让发帖呢,申请作家都不给通过...

0eab1ddd3707a6b4974d67fe7fb7747e.png

有轮子就不要再自己造轮子了,这是行业公认的,我这里不是从头写一个权限库,而是在开源组件上再封装以统一公司内部调用,随时可以替换第三方实现,从开源库再封装这个角度来写文章的很少,我这里带大家领略另一番风景,先说好不喜勿喷啊,我这水平幼儿园都没毕业呢

项目地址:BW_Libs

https%3A%2F%2Fgithub.com%2Fzb25810045%2FBW_Libs


先看下 Demo 的 代码

不上 gif 了,录这个时间太长,gif 太大网页很卡。Demo 的思路如下,正常的判断权限,有3个回调,用户确认给予权限,用户不给,和用户点选不在显示系统权限弹窗。这里我们在用户不显示弹窗后的回调里启动系统权限设置页,在用户关闭权限设置页面过后,我们再检测下=刚刚用户给没给权限,没给权限的话就自己显示个弹窗,提示用户不给权限就关闭页面

Demo 代码如下:

class PermissionActivity : AppCompatActivity() {
         override fun onCreate(savedInstanceState: Bundle?) {
             super.onCreate(savedInstanceState)        setContentView(R.layout.activity_permission)        btn_permission.setOnClickListener{
                 PermissionManage                    .with(this)                    .permission(Manifest.permission.CALL_PHONE)                    .permission(Manifest.permission.CAMERA)                    .permission(Manifest.permission.READ_PHONE_STATE)                    .onSuccess { Toast.makeText(this@PermissionActivity, "申请成功", Toast.LENGTH_SHORT).show() }                    .onDenial { Toast.makeText(this@PermissionActivity, "用户拒绝", Toast.LENGTH_SHORT).show() }                    .onDontShow { IntentUtils.startSettingActivityForResult(this, 200) }                    .run()        }    }    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
             if (requestCode == 200) {
                 var permissions = listOf(Manifest.permission.CALL_PHONE, Manifest.permission.CAMERA, Manifest.permission.READ_PHONE_STATE)            if (PermissionManage.isHavePermissions(this, permissions)) {
                     Toast.makeText(this, "欢迎您给予的权限", Toast.LENGTH_SHORT).show()            } else {
                     showDialog()            }        }    }    private fun showDialog() {
             var build: AlertDialog.Builder = AlertDialog.Builder(this)        build.setMessage("缺乏权限,请求您给予权限")        build.setPositiveButton("申请权限", object : DialogInterface.OnCli
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值