可以编辑Android系统的活动吗?

时间:2012-06-06 16:14:37

标签: android android-activity contactscontract

有人知道是否可以在android中编辑系统活动?

例如,在ContactContracts.people的活动中插入一个新的EditText ..... 如果有可能,我该怎么办?

由于

2 个答案:

答案 0 :(得分:0)

是的,这是可能的。编辑android IOS ContactContracts函数,然后在手机中设置它。

答案 1 :(得分:0)

编辑吗?肯定。

安装它,甚至构建它?没那么快。

很多内置应用程序都是针对完整的android系统构建而不是android SDK导出而构建的。有时可以修改它们以针对SDK进行构建,但在其他情况下,您需要构建整个android本身的源代码。

安装也可能有点棘手。几乎任何你可以购买的Android设备都是“安全的”,因为你无法更改系统应用程序所在的分区,或者以相同的名称为它们安装替代品。谷歌直接销售的设备,以及越来越多的manfucturer品牌推出的设备有时会让你解锁他们的引导程序,以允许安装自定义固件映像(注意与SIM解锁不同)。但是,即使在允许您修改系统分区的设备上,也不是免费的,因为您可能无法使用用于签署设备上已有系统应用程序的相同密钥对已修改的apk进行签名。这意味着您最终必须重新签署所有系统应用程序,以便您而不是供应商成为受信任的作者。 (但是有时设备实际上并没有检查apk中每个文件上的签名,如果它位于正常受保护的系统分区上,这样您就可以将修改后的类文件替换为供应商签名的apk并使其仍然可用)

实际上,如果您使用可以选择或获取签名密钥的已修改原始版本替换整个原始版本,则更改系统应用程序非常简单。这是Android模型的一大悲剧,对你自己的设备进行“只是一个小小的改变”变成了一个如此大的项目 - 并且通过扩展,你只能在完全备用构建的上下文中与其他用户真正共享这些更改

一种可能的简化方法是,您要更改的功能不必保留在系统应用程序中 - 即,如果您可以复制和重命名应用程序,并使用新名称安装修改后的版本,只需使用代替。如果应用程序不需要任何特殊权限,并且您为所有完整系统与sdk构建问题提出了解决方案,那么这可能是一条可行的途径。