我已经为此烦恼了好几个小时了。我确定这是我想念的简单事情,但我根本无法弄清楚!
我有一个系统应用程序,我通常使用 mmm $PACKAGE_FOLDER 构建它。我还有另外两个可以正常工作的应用程序,但是当我执行这个应用程序时,我会收到一连串“包 R 不存在”错误。经过大量挖掘,似乎 aapt 没有运行。只要 AndroidManifest.xml 存在(即使 res 目录不存在)(并且即使 AndroidManifest.xml 是任何旧垃圾,甚至不是 XML),构建系统就会尝试构建源文件并在找到R.id 等参考资料。
是否有一些 Android.mk 设置会阻止 aapt 作为副作用运行?我已经尝试在其中注释掉各种行,但它似乎总是因相同的错误而失败(除非我注释掉源或其他东西)。
这是我的 Android.mk:
LOCAL_PATH := $(call my-dir)
# Extra makefile include - nothing involving the android build system.
include $(LOCAL_PATH)/../../SomeExtraRules.imk
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_PACKAGE_NAME := Pkg_name
LOCAL_CERTIFICATE := platform
LOCAL_SRC_FILES := some_source_files
LOCAL_AIDL_INCLUDES := some_aidl_files
LOCAL_PROGUARD_ENABLED := disabled
# Generally this project is built to provide an APK signed with platform keys
# which can be installed on a device by a user.
# This LOCAL_DEX_PREOPT tells the Android build system to
# keep the classes.dex inside the apk (instead of processing it into
# a .odex file).
LOCAL_DEX_PREOPT := false
include $(BUILD_PACKAGE)
编辑:我之前尝试过重建,但我再次尝试确保。编辑:重试 - 它仍在发生!