Android 预置应用overlay机制使用
通过overlay配置,可实现覆盖同包名应用下的资源:
将 res、Android.mk、AndroidManifest.xml 放在同级目录,放在系统源码中打包
Android.mk
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-subdir-java-files)
LOCAL_SDK_VERSION := current
LOCAL_PACKAGE_NAME := MyOverlay
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)/overlay
LOCAL_CERTIFICATE := shared
LOCAL_AAPT_FLAGS := --auto-add-overlay
include $(BUILD_PACKAGE)
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ian4u.tool.overlay"> <!--指定overlay应用包名-->
<overlay
android:priority="1"
android:isStatic="true"
android:targetPackage="com.ian4u.tool" />
</manifest>
res 下存放资源文件,与常规同包名应用保持一致即可覆盖

本文介绍了Android预置应用如何利用overlay机制覆盖同包名应用的资源。通过在系统源码中打包res、Android.mk、AndroidManifest.xml,并确保文件位于同级目录,可以实现对资源的定制和替换。
1674

被折叠的 条评论
为什么被折叠?



