[讨论] 自己动手解决“应用自定义权限重名”无法安装应用的问题
本帖最后由 抱紧你的大头 于 2016-3-16 18:02 编辑 问题详情 → 应用自定义权限重名导致应用无法安装,这个问题大家时不时都会碰到,但是原因却没人说得清,而且去网上搜出来的结果全都是魅族的,导致大家都以为这是 Flyme 的毛病。 这倒真是冤枉 Flyme 了,你搜不到别的机型有这个问题,只是因为魅族的叫法是“应用自定义权限重名”,而其他的叫法一般是“应用权限冲突安装失败”这类,如果大家去百度搜这个关键词就能看到很多结果了,所以,事实证明这并非是魅族的问题,而是 Android 5.0 和应用自身的问题。 类似的问题在百度LBS开放论坛中都有人反馈过: 可能看起来有点复杂?简单点来说就是:手机上已经装了A应用,你现在要装B应用,然而A和B都用了一个共同的权限但是他俩签名不一致,于是B安装失败。想要解决?找出A,卸载A,就能愉快的装上B了。:lol 详细教程 → 但是要怎么找出A是个问题,手机里那么多应用,谁知道是哪个幺蛾子在作祟?好吧,教程来了: 1. 点击这里 下载安装log工具; 2. 安装 log 工具后按照下载链接里的方法开始抓 log,然后安装 B,等 B 提示自定义权限重名安装失败后停止抓 log; 3. MX4 Pro的话在手机存储盘里找到 Android/log 文件夹,按时间戳找到刚抓的 log 文件夹,将里面的 logSnapshot 文件复制到电脑上; MTK平台的机型需要将mtklog/mobilelog/对应时间文件夹/sys_log文件复制到电脑上; 4. 电脑上安装 Notepad++ ,主要是这个应用看起来舒服很多; 5. 找到 log 文件,右键选择用 Notepad 打开,然后点击左上角的“搜索”键,点击“查找”,搜索这个字段“PackageManager:”,点击“在当前文件中查找”;(当然搜 “already owned”可能更快,谢谢@MZ_yklee 提醒~) 6. 出来的结果大致如下,看不清的可以点开图片查看大图。 举个例子 → 以我为例,我是安装野兽骑行时出现这个提示的,根据这个应用的包名和搜索结果,可以看到最后一行显示这个应用和“星巴克中国”共同占用了“android.permission.BAIDU_LOCATION_SERVICE”这个权限。MTK机型搜到的结果多一些,但是关于这一点的内容也是一样的。所以就能看到问题所在了,要么我继续保留星巴克,要么就卸载星巴克安装野兽骑行。 包名查找 → 不认识包名代表什么应用的话,可以将这个网址复制到地址栏:“app.flyme.cn/apps/public/detail?package_name=”,然后将包名复制到=后面,打开链接就能知道是什么应用了; 暴力解决 → 觉得以上步骤太麻烦或者你根本不关心和谁冲突只想两个应用都正常安装?嗯,按照百度的结果,你可以 root 后用 RE 管理器将应用安装包复制到 data/app 目录下,重启后即可安装成功。 所以,说到底还是应用本身的问题,Flyme也是吃了不少哑巴亏,以上,结束。 |