国产权限的血与泪

作者: 键盘上的麒麟臂 | 来源:发表于2020-04-20 21:06 被阅读0次

其实也不是什么大的BUG,但是我觉得有必要记录一下国产手机的一些细节吧,被一些神奇的权限搞得是真的蛋疼。

一. 获取应用列表权限

事情是这样的,有一次,突然要写个跳转微信的功能,但是我一般会先做一步判断,先判断手机是否已经安装了微信,安装了才跳转,没安装就直接提示用户。
结果自己测试的时候是使用小米手机测的没问题,但是提交给测试进行测试的时候华为手机就出现了问题,没办法正常跳转微信。
经过一番调试之后,返现是判断是否安装微信那里出了问题,明明有安装微信,但是却检查不到。

 List<PackageInfo> pinfo = packageManager.getInstalledPackages(0);

就是用以上的代码获取应用列表,结果获取不到,竟然一番调试,发现竟然是这个“获取应用列表权限”的问题,有些手机这个权限默认是同意,有些厂商的手机默认是拒绝。
然而最重点的地方来了,按照我们正常的思想,我们肯定是想可以判断这个权限是否获取,没获取的话去申请这个权限,哪怕是动态申请。
然而问题就在于这个权限不是官方的权限,是没法动态申请的。

我不知道有没有更好的解决方案,我自己是有两个思路,第一,单独对这些厂商做适配,跳转到权限申请的页面,让用户自己手动点同意,但我感觉这不是一个好的解决方法,无论从哪个方面来说。第二,跳转的时候,不做判断应用是否安装,直接加异常捕获,我自己是这样做的,虽然这个方案也感觉不太好,但至少是比第一个方法好些。

二. 后台弹出页面权限

事情是这样的,又有一次,突然要写一个跳转安装页面的功能,结果测试老铁说,当应用切后台之后,下载完应用无法跳转安装页面。
我寻思着不可能啊,N年前我也试过,在后台也是能Intent的啊,结果自己拿来测试一看,哎呦,还真在后台Intent没反应,经过一番调试,返现是跟一个“后台弹出页面权限”有关。
我的是小米手机,结果我找到了这个


虽然是一张旧图,但是也能大概看出了问题所在。
那么关于这个问题,我的方法就只有做一个lazy操作,在返回页面的时候,生命周期能监听到,再做跳转的操作

三. 总结

所以说,光这个国产权限的问题,确实让开发者头疼,开发时碰到的就两个了,没准又还有其它没发现的呢。
这些限制对于用户来说确实是加强了用户体验,就像图中所说的,他能防止流氓软件疯狂弹页面,但是对开发者来说确实有点蛋疼,我们是良民好吗,也被限制在门外了,加白名单确实是一个做法,那不是要对限制的厂商都去申请白名单吗。
目前我的做法就是只能用一些逻辑代码去绕过这些问题,具体的问题具体操作,如果有哪位大佬有好一些的解决方法,希望能够指点一下。
最后就是关于如果你在开发过程中碰到一些问题是部分厂商出现,部分厂商正常的话,可以往权限这个方向考虑,是不是权限这些问题引起的。

相关文章

  • 国产权限的血与泪

    其实也不是什么大的BUG,但是我觉得有必要记录一下国产手机的一些细节吧,被一些神奇的权限搞得是真的蛋疼。 一. 获...

  • 血与泪

    三月中旬有次意外受伤,当时哭得稀里哗啦。当时只想着自己会不会残疾,从一个正常人转变到小拇指如同虚设,我心里还是难以...

  • 泪与血

    心到眼睛 流淌着一条河 当悲伤的河水涌上来 不能怕 就从心底 挤压出快乐的鲜血

  • 血与泪

    放下曾经的骄傲与辉煌,去追寻那心中的梦想,即使折断翅膀,即使一次次受伤,也要带着血与泪飞翔……

  • 爱与恨&血与泪

    在这个严酷的寒冬,我用仇恨注视着个世界。 我是一个复仇者,早已经闭紧了双眼,仿佛一切都是漆黑色的。在这伸手不见五指...

  • 血与泪的故事

    习惯把故事 掺着血,和着泪 从前一天晚上讲到 第二天的清晨 我知道太阳一升起 你就会变得疯狂 像只饿狼 却只在日光...

  • 车祸的血与泪

    月末财务加班狗今天照旧去公司加班,下了地铁走在去公司的路上,突然间看见前面的马路边围着一大堆人,想来一定是发生车祸...

  • 血与泪的童话

    跳舞的人要不停的练功,他们脚上有伤,膝盖有血,台下哭了一遍又一遍,喊着要放弃也不知道喊了多少次。” “但登台的...

  • 血是血,泪是泪

    血是血,泪是泪 离别是日渐的醉 愁也无非 苦也无非 溶进了酒一杯

  • 血与泪的股市心得

    1.永远避免高位入手。 2.十点之前的操作都是非理性的,十点之后再谈入手或抛售。 3.没有好的目标宁可不出手,不赔...

网友评论

    本文标题:国产权限的血与泪

    本文链接:https://www.haomeiwen.com/subject/ciajihtx.html