首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使Android源代码中的应用程序编译为system/app

使Android源代码中的应用程序编译为system/app
EN

Stack Overflow用户
提问于 2016-10-06 21:24:16
回答 3查看 2.4K关注 0票数 2

我正在努力学习如何在android源代码中编译一个应用程序。这个应用程序只是一个简单的hello world应用程序。我遵循Making an app in the Android Source compile into system/app instead of data/app?和其他几个来源的指示。但是,当我制作应用程序时,apk文件被写入带有后缀中介的obj/app,而不是system/app,并且在启动时无法在模拟器中显示。请在Android.mk文件下面找到。

代码语言:javascript
复制
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE_TAGS := tests 

LOCAL_MODULE_PATH := system/app

LOCAL_UNINSTALLABLE_MODULE := true

LOCAL_SDK_VERSION := current

LOCAL_PACKAGE_NAME := MyApplication

LOCAL_STATIC_JAVA_LIBRARIES := android-support-v4
LOCAL_STATIC_JAVA_LIBRARIES += android-support-v7-appcompat
LOCAL_STATIC_JAVA_LIBRARIES += android-support-v7-gridlayout
LOCAL_STATIC_JAVA_LIBRARIES += android-support-v13
LOCAL_STATIC_JAVA_LIBRARIES += android-support-design

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

LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
LOCAL_RESOURCE_DIR += prebuilts/sdk/current/support/v7/appcompat/res
LOCAL_RESOURCE_DIR += prebuilts/sdk/current/support/v7/gridlayout/res
LOCAL_RESOURCE_DIR += prebuilts/sdk/current/support/design/res

LOCAL_CERTIFICATE := platform

LOCAL_AAPT_FLAGS := --auto-add-overlay
LOCAL_AAPT_FLAGS += --extra-packages android.support.v7.appcompat:android.support.v7.gridlayout

include $(BUILD_PACKAGE)
##################################################
include $(CLEAR_VARS)

include $(BUILD_MULTI_PREBUILT)

# Use the following include to make our test apk.
include $(call all-makefiles-under,$(LOCAL_PATH))

我通过进入包/应用程序中的应用程序目录并执行“mm”操作来创建应用程序。这里有我遗漏的东西吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-10-22 09:10:48

查找BoardConfig.mk并添加以下内容:

代码语言:javascript
复制
PRODUCT_PACKAGES += MyApplication

AOSP构建系统将构建每个Android.mk,但是只有在BoardConfig中定义的包才会被放入最终的产品路径。

票数 0
EN

Stack Overflow用户

发布于 2017-01-10 03:23:32

您必须从设备/“您的首选供应商”/“device_name”/aosp_“设备名称”.mk文件中将应用程序模块添加到.mk中

它应该如下所示

代码语言:javascript
复制
$(call inherit-product, device/lge/hammerhead/full_hammerhead.mk)

PRODUCT_NAME := aosp_hammerhead

PRODUCT_PACKAGES += \
        Launcher3 \
    MyApplication \
票数 0
EN

Stack Overflow用户

发布于 2020-06-12 08:34:08

有点改变了。Aosp检查/device/"vendor"/"your_device"/"your_platform"/base.mk文件是否编译,以及/device/“your_device”/Common/base.mk用于将apk安装到/out/target/product/" your _device/system/ app /“,应该将应用程序名添加到两个文件中。在我的例子中,aosp/device/qcom/qssi/base.mk编译,aosp/device/qcom/公用/base.mk将输出(Apk)安装到/out/target/product/msm8953/system/app/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39905846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档