system - 签署Android系统应用程序(研究项目)

标签 system certificate

我正在为内部研究项目开发概念验证工具。

我们有特定的需求,只能通过将我们的应用程序作为系统应用程序运行来满足,例如“设置”或“电话”应用程序。

我是否认为在系统用户 (uid=1000) 下运行应用程序的唯一方法是在 list 中设置以下内容:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.frogdesign.desktop" 
    android:sharedUserId="android.uid.system" > 

并使用平台证书签署我的应用程序?

如果是这样,对于给定的手机,例如Galaxy S,这需要我们使用三星的证书进行签名。不会发生的,对吧。

那么如果我们root手机然后贴上cyanogenmod之类的东西,需要的证书会是cyanogenmod的平台证书吗?

这通常可用吗?

最佳答案

我相信您不会使用制造商的 key 。在我的 Galaxy S 上,Gmail 应用程序是一个系统应用程序,您可以从 Android Market 更新它(即它是由 Google 而不是三星签名的,如果有的话)。

如果电话是deodexed ,您应该能够将应用程序移动到 /system/app/ (或 /system/priv-app/ 在较新的操作系统版本上)。这需要有根电话,以便您可以将系统分区挂载为可写。当然,这与您的 list 设置有关。我不确定这是否足够,因为我自己还没有这样做过,但可以尝试一下。

关于system - 签署Android系统应用程序(研究项目),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5981284/

相关文章:

ruby - 终端询问电子邮件和密码,我该如何以编程方式填写它(在 Ruby 中)?

c++ - 应用中的脚本系统

java - 将私钥导入Java时出错

ios - 由 XCode 管理的配置文件

java - 使用 java 编写使用 ssl/tls 的客户端-服务器应用程序,但不能使用 keytool

c - 系统调用 - 如何在字符串中查找字符(如果该字符存在)

java - 为什么我不能将 JAVA_HOME 和 JRE_HOME 设置为其他值?

vb.net - 使用以SYSTEM身份运行的vb.net应用程序,如何为每个登录用户启动分离的进程?

c# - Flul 和不受信任的证书

python - Windows 如何将 pe 文件链接到它在目录文件中的签名?