【问题标题】:Making an app in the Android Source compile into system/app instead of data/app?使Android Source中的应用程序编译为系统/应用程序而不是数据/应用程序?
【发布时间】:2012-04-13 20:53:14
【问题描述】:

我正在从源代码编译 Android ROM,并且我有几个可以编译的应用程序,但会编译成手机上的数据/应用程序。它们可以通过手机设置卸载。我希望它们无法从手机上卸载,并编译成系统/应用程序而不是数据/应用程序。

有什么建议吗?

编辑:错字

【问题讨论】:

  • 我没有大量使用 ROM 编译应用程序的经验,但我知道您需要使用系统签名对应用程序进行签名才能使其成为系统应用程序。以下链接可以解决问题吗? stackoverflow.com/questions/3635101/…
  • 试一试。我将它添加到 标记中,希望这是正确的位置。编辑:OOPS 将其添加到 标记并重试
  • 您还需要使用正确的密钥对应用进行签名,而不仅仅是将该值添加到清单中。
  • 我正在尝试通过在 Android.mk 中为我的应用设置 LOCAL_CERTIFICATE := system 来为应用签名,但现在它根本没有安装应用
  • 我担心制作文件超出了我的专业范围。其他人也许可以在这方面为您提供帮助。

标签: android android-source rom


【解决方案1】:

添加:

LOCAL_MODULE_PATH := system/app
LOCAL_UNINSTALLABLE_MODULE := true
LOCAL_CERTIFICATE := platform

【讨论】:

  • 你能提供一份文件吗?当我把那个是 mk 文件时,应用程序根本不会构建
  • LOCAL_UNINSTALLABLE_MODULE 是做什么的?
【解决方案2】:

这是您可以使用的 mk 文件示例。在我的例子中,应用程序被构建到system/app

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE_TAGS := optional

LOCAL_SRC_FILES := $(call all-java-files-under, src)

LOCAL_PACKAGE_NAME := package_name
LOCAL_CERTIFICATE := platform

include $(BUILD_PACKAGE)

# Use the folloing include to make our test app
include $(call all-makefiles-under,$(LOCAL_PATH))

【讨论】:

【解决方案3】:

使用 cm_10.2,我将我的应用程序添加到 packages/apps 中,默认情况下,mm 将其构建到 /data/app 中。我希望它进入系统/应用程序。它通过将其添加到 Android.mk 中来工作:

LOCAL_MODULE_PATH := $(TARGET_OUT_APPS)

但我不确定这是否是一种干净的方式,因为我几乎发现没有人这样做。

【讨论】:

    【解决方案4】:
    LOCAL_PATH:= $(call my-dir)
    
    include $(CLEAR_VARS)
    
    LOCAL_MODULE_TAGS := optional
    LOCAL_UNINSTALLABLE_MODULE := true
    LOCAL_MODULE_PATH := $(TARGET_OUT_APPS)
    LOCAL_CERTIFICATE := platform
    
    LOCAL_SRC_FILES := $(call all-java-files-under, src)
    
    LOCAL_PACKAGE_NAME := MyTestApp
    
    LOCAL_PROGUARD_ENABLED := disabled
    LOCAL_PRIVILEGED_MODULE := true
    
    LOCAL_STATIC_JAVA_LIBRARIES := libarity android-support-v4
    
    include $(BUILD_PACKAGE)
    
    include $(call all-makefiles-under,$(LOCAL_PATH))
    

    【讨论】:

      猜你喜欢
      • 2016-10-01
      • 2011-04-05
      • 1970-01-01
      • 2017-11-30
      • 2012-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-21
      相关资源
      最近更新 更多