#每个Android.mk文件都以LOCAL_PATH开始,Build System提供的宏函数 my-dir,此变量返回包含的makefile的路径;
#CLEAR_VARS 变量指向一个特殊的 GNU Makefile,后者会清除许多 LOCAL_XXX 变量,CLEAR_VARS不会清除LOCAL_PATH变量;
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := Weather
#指定APP应用名称
LOCAL_PACKAGE_NAME := InoWeather
#如果预置的APK,要覆盖原生apk,则需在android.mk中的添加LOCAL_OVERRIDES_PACKAGES,此变量可以使其他的模块不加入编译。
LOCAL_OVERRIDES_PACKAGES := Music MusicBspPlus MusicFX
#true 表示app应用在目录/system/priv-app/下, false 表示app应用在目录/system/app/下
LOCAL_PRIVILEGED_MODULE := true
#是否是设备专有模块
LOCAL_MODULE_OWNER := mtk
#该APK完成一些系统的核心功能。经过对系统中存在的文件夹的访问测试,这种方式编译出来的APK所在进程的UID为system。
LOCAL_CERTIFICATE := platform
#optional指该模块在所有版本下都编译
LOCAL_MODULE_TAGS := optional
#true设置后,会使用sdk的hide的api來编译
LOCAL_PRIVATE_PLATFORM_APIS := true
#最后的目标安装路径
LOCAL_MODULE_PATH := $(TARGET_OUT_APPS)
#指定不需要混淆的native方法与变量的proguard.flags文件
LOCAL_PROGUARD_FLAG_FILES := proguard.flags
#LOCAL_SRC_FILES 变量必须包含要编译到模块中的 C 和/或 C++ 源文件列表
LOCAL_SRC_FILES := $(call all-java-files-under, src) \
src/com/android/music/IMediaPlaybackService.aidl \
src/com/mediatek/bluetooth/avrcp/IBTAvrcpMusic.aidl \
src/com/mediatek/bluetooth/avrcp/IBTAvrcpMusicCallback.aidl
#指定依赖的共享java类库
LOCAL_JAVA_LIBRARIES += mediatek-common
LOCAL_JAVA_LIBRARIES += mediatek-framework
LOCAL_JAVA_LIBRARIES += voip-common
#android依赖库
LOCAL_STATIC_ANDROID_LIBRARIES := \
$(ANDROID_SUPPORT_DESIGN_TARGETS) \
android-support-percent \
android-support-transition \
android-support-compat \
android-support-core-ui \
android-support-media-compat \
android-support-v13 \
android-support-v14-preference \
android-support-v7-appcompat \
android-support-v7-gridlayout \
android-support-v7-preference \
android-support-v7-recyclerview
LOCAL_USE_AAPT2 := true
#指定库的规则
LOCAL_STATIC_JAVA_LIBRARIES := \
android-common \
com.mediatek.omadrm.common
ifeq ($(TARGET_BUILD_APPS),)
support_library_root_dir := frameworks/support
else
support_library_root_dir := prebuilts/sdk/current/support
endif
#表示 Res 的路径
LOCAL_RESOURCE_DIR := \
$(addprefix $(LOCAL_PATH)/, res)
#指定资源文件路径
LOCAL_AAPT_FLAGS := \
--auto-add-overlay
include $(BUILD_PACKAGE)
#BUILD_SHARED_LIBRARY 变量指向一个 GNU Makefile 脚本,该脚本会收集您自最近 include 以来在 LOCAL_XXX 变量中定义的所有信息。此脚本确定要编译的内容以及编译方式。
android.mk里面功能含义
最新推荐文章于 2024-05-22 17:39:52 发布