代码之家  ›  专栏  ›  技术社区  ›  BamsBamx

更新AOSP内置系统应用程序

  •  1
  • BamsBamx  · 技术社区  · 8 年前

    假设我们已经下载、构建并刷新了AOSP源代码。现在对系统应用程序进行了更改(例如,更改了包/应用程序/Nfc包中的常数)。

    下一步是构建它,有两种方法:

    cd packages/apps/Nfc; mm
    

    mmm Nfc
    

    这将创建out/target/product//system/app/NfcNci/NfcNci。apk文件

    更新系统应用程序的正确方法是什么?

    我试过使用 adb安装NfcNci。apk公司 但没有成功:

    ~/android/aosp-7.1.2-3.10-v2/out/target/product/kugo/system/app/NfcNci$ adb install NfcNci.apk
    Failed to install NfcNci.apk: Failure [INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install com.android.nfcnci without first uninstalling.]
    ~/android/aosp-7.1.2-3.10-v2/out/target/product/kugo/system/app/NfcNci$ adb install -r NfcNci.apk
    Failed to install NfcNci.apk: Failure [INSTALL_FAILED_INVALID_APK: Package couldn't be installed in /data/app/com.android.nfcnci-1: Package /data/app/com.android.nfcnci-1/base.apk code is missing]
    
    3 回复  |  直到 8 年前
        1
  •  3
  •   BamsBamx    8 年前

    找到了一种轻松“重新安装”应用程序本身的方法(以设置应用程序为例):

    mmm packages/apps/Settings  # Build the module
    adb root ; adb remount  # Restart adbd as root and mount /system as writable
    adb push out/target/product/<device_name>/system/priv-app/Settings /system/priv-app  # Push the built files to the device
    

    然后强制关闭并重新启动应用程序(从 最近

    system/app 而不是 /system/priv-app

        2
  •  1
  •   IIIIIIIIIIIIIIIIIIIIII Debojit Saikia    8 年前

    另一种方法是:

    1. adb push
    2. 装载/系统读写: mount -o rw,remount,rw /system
    3. 复制您的新。apk from/sdcard over your old。apk in/system/app
    4. 拆下。旧的odex文件。apk公司
    5. 重新启动设备

    对于开发,您可以使用一个简单的脚本来完成这些步骤。

        3
  •  0
  •   Mixaz    8 年前

    检查 生成/环境设置。上海 文件-还有命令 mmp mmmp adb sync 可以用来同步整个图像,所以若你们更新了一个模块,更改后的文件将被推送到设备上。

    此外,您还可以通过常规的“adb推送”和重新启动设备放置更改的文件。

    我不知道是否可以通过 adb install ,可能是的,但我认为您需要增加清单文件中的内部版本号。

    我认为你不能用 adb install -r system 分区,仅来自 data