You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AOSP构建中添加APK后新应用未显示的问题求助

解决方法

1. 修正模块名称的引号与空格问题

Android构建系统对带空格的模块名称支持不佳,且mk文件中的引号会导致识别异常。建议:

  • 将/packages/apps/下的文件夹重命名为FolderApp(移除空格)
  • 修改android.mk中的模块名称:
LOCAL_MODULE := FolderApp
  • 同步修改handheld_product.mk中的引用:
PRODUCT_PACKAGES += \
    Browser2 \
    Camera2 \
    LatinIME \
    Launcher3QuickStep \
    Music \
    FolderApp \
    OneTimeInitializer \
    Provision \
    Settings \
    SettingsIntelligence \
    SystemUI \
    StorageManager \
    WallpaperCropper \
    frameworks-base-overlays

2. 调整模块标签,确保全版本编译

LOCAL_MODULE_TAGS := tests仅会让应用在eng/debug等测试版本中编译,若你编译的是user或userdebug版本,应用不会被包含。修改为:

LOCAL_MODULE_TAGS := optional

optional标签表示只要在PRODUCT_PACKAGES中声明,所有版本都会编译该模块。

3. 验证APK是否被正确编译生成

编译完成后,检查out/target/product/<你的设备型号>/system/app/FolderApp/FolderApp.apk路径是否存在对应文件。若不存在,单独编译该模块:

make FolderApp

再重新打包系统镜像。

4. 检查APK的启动配置有效性

确保my_app.apk的AndroidManifest.xml中包含带启动器类别的Activity,示例:

<activity android:name=".MainActivity">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

缺少此配置的APK,即使安装成功也不会在启动器中显示。

5. 确认签名兼容性

如果APK需要作为系统应用运行,需确保签名符合要求:

  • 若APK是预签名状态,确认LOCAL_CERTIFICATE := PRESIGNED配置正确,且APK本身的签名与系统兼容;
  • 若需要系统级签名,将LOCAL_CERTIFICATE改为platform,并使用对应平台的签名密钥重新签名APK。

内容的提问来源于stack exchange,提问作者Reuel Queiroz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 08:24:53