反编译酷开系统主页的AndroidManifest可以发现,酷开系统的桌面应用除了HOME之外还需要加一条HOME.CC属性才能设置默认桌面,如 图1(我不太清楚上面“真正的主页”那个activity是什么意思…它标了HOME_MAIN和HOME.CC_MAIN,但我从来没见过HOME_MAIN这个属性,不知道是做什么用的)。
图2 是我给当贝桌面添加了HOME.CC,然后安装当贝桌面卸载系统主页后、开机就能正常进入当贝桌面了。
另外酷开主页的HOME属性和一般的桌面还不一样,前者是coocaa.intent.action.HOME但正常安卓都用的android.intent.category.HOME,我目前不太清楚这两者的效果有什么区别,应为我并没有给当贝桌面改coocaa.intent.action.HOME但运行起来挺正常的,,只是按home键没反应了…我猜测可能是和home键事件有关? 我后来试了一下……把coocaa.intent.action.HOME和那两个带_MAIN的属性全都加上了还是没有变化,看来这几条属性应该没什么用。。
不能安装第三方应用和魔改应用安装器还是有关系的,系统魔改的软件安装程序会强制只能由应用圈安装应用,而用原生安卓的软件安装程序替换之后就只会受原生安卓的安全策略限制了,然后研究一下原生限制是怎么实现的应该就有办法一劳永逸解除限制了……不过我懒得折腾这个了,就直接把应用圈卸载了然后当贝市场改成应用圈的包名了。。
另外我发现/system/etc/下存在两个白名单文件,一个是whitelistapp.xml,作用未知。我猜它可能就是标记可信任安装来源的,把当贝市场包名加进去、再用原生安卓的软件安装程序替换酷开系统的软件安装程序,就可以避免卸载系统应用而无限制安装第三方软件了。不过我懒得折腾了就没继续研究下去
另一个是white_app.xml,里面记录了一些后台保活的程序之类的,值得关注的是这个文件强制指定了电视主页的包名和activity,所以这就是我一开始改包后导致home失效的原因了。把正确的activity输进去就能正常使用了。
![]()
![]()
|