为了学习android中的deodex / decompiling,我决定玩一些系统应用程序。为此,我决定对手机上的原生FM收音机应用进行一些小的UI更改。手机正在运行android 4.4。我首先根据我的手机,反编译无线电应用程序,对它进行了一些更改,然后将其放在/ system / app文件夹中删除旧的apk,它工作正常。后来只是为了好奇,我制作了一个无线电小部件(重新使用本机应用程序中的代码)。在我的设备上安装了该小部件,它对我有用。
最近我买了一部运行android 5.0的新手机。我反编译了它的原生广播应用程序。使应用程序重新使用一些本机fm应用程序的代码并将其安装为用户应用程序。应用程序安装并运行但无线电无法正常工作。这款手机没有根据,它给了我FM收音机的许可问题。在日志中,我可以在/ dev / fm
上看到错误权限被拒绝运行4.4的旧手机,我有一个类似的从未植根并安装我的无线电小部件,它实际上工作(所以4.4有或没有根fm工作)
我检查了/ dev / fm上的权限,如下所示
旧手机4.4:crw-rw -----系统媒体fm 新手机5.4:crw-rw -----系统媒体fm
两者的权限相同,但我仍然在Android 5.0上获得权限被拒绝。
我不确定Android 5.0中是否有某些权限更改(对于媒体用户/组可能)。有人可以在这方面帮助我吗?
答案 0 :(得分:1)
Selinix相关。我看到fm电台应用程序的类似问题。试图从自定义rom imto tje stock rom(同一部手机)安装无线电应用程序。无线电工作于定制但没有库存。 Logcat show / dev / fm被认为是对tmpfs的访问权限,permissive = 0。所以我在许可和FM收音机作品中进行了库存运行
在你的情况下,android 4,“permissive”和android 5来“强制”