我的 rro 软件包当我将其放入系统或供应商分区时它可以工作,但是当我将其移至 OEM 分区时,该软件包会以
cmd overlay list
列出,但出现错误 NO_IDMAP。
你有什么想法吗?
非常感谢!
当包在供应商或系统中时我得到什么 `$ cmd 覆盖列表 com.xxx.x.partnerinterface [x] com.xxx.x.partnerinterface.rro
我的包在 OEM 分区时的输出 com.xxx.x.partnerinterface --- com.xxx.x.partnerinterface.rro
我自己也只使用过供应商和系统覆盖,但这里有一些不同的想法:
LOCAL_OEM_MODULE
而不是 LOCAL_VENDOR_MODULE
设置覆盖,如下所示:LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_OEM_MODULE := true
LOCAL_CERTIFICATE := platform
LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
LOCAL_PACKAGE_NAME := YourOverlay
LOCAL_SDK_VERSION := current
include $(BUILD_RRO_PACKAGE)
oem.img
中,你是否像这样添加了包: PRODUCT_PACKAGES += \
YourOverlay
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.settings.overlay.yours">
<application android:hasCode="false"/>
<overlay android:targetPackage="com.android.settings" android:isStatic="true" android:priority="600"/>
</manifest>
使用包
android
作为框架本身。
运行
adb shell dumpsys overlay
看看它是否出现在那里。