我在我的项目中添加了一个辅助文件,以解决我在调用intent.getIntExtra(..)时遇到的“ ClassNotFound”异常(因为在相同的intent附加项中存在另一个可打包对象)
我添加了以下.aIDl文件(SomeInfo.aIDl)
package com.someapp;parcelable SomeInfo;
我添加到AndroID.mk:
LOCAL_AIDL_INCLUDES := src/com/someapp/SomeInfo.aIDl
但是,当我构建项目时,我看不出有什么不同.
实际上,如果我添加到代码中
import com.someapp.somInfo;
编译器找不到…
请帮忙
解决方法:
您还需要将其添加到LOCAL_SRC_fileS中,例如:
LOCAL_SRC_fileS := $(call all-java-files-under, src) src/com/someapp/SomeInfo.aIDlLOCAL_AIDL_INCLUDES := src/com/someapp/SomeInfo.aIDl
或者,您可以使用预定义的函数,例如:
LOCAL_SRC_fileS := $(call all-java-files-under, src) $(call all-IaIDl-files-under, src)LOCAL_AIDL_INCLUDES := $(call all-IaIDl-files-under, src)
让我添加更多详细信息.实际上,base_rules.mk是处理辅助文件的一个定义规则:http://androidxref.com/4.4.3_r1.1/xref/build/core/base_rules.mk#178.它将自动拾取所有具有辅助文件扩展名的文件,如下所示:
aIDl_sources := $(filter %.aIDl,$(LOCAL_SRC_fileS))
您要添加辅助文件的LOCAL_AIDL_INCLUDES列表实际上定义为AIDL编译器的-I *参数:
$(aIDl_java_sources): PRIVATE_AIDL_FLAGS := -b $(addprefix -p,$(aIDl_preprocess_import)) -I$(LOCAL_PATH) -I$(LOCAL_PATH)/src $(addprefix -I,$(LOCAL_AIDL_INCLUDES))
总结 以上是内存溢出为你收集整理的将辅助文件添加到Android.mk全部内容,希望文章能够帮你解决将辅助文件添加到Android.mk所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)