这与我的previous question.有关我正在尝试使用maven从android 4.0.4构建Phone
应用程序(我将framework_intermediates添加为依赖项,因此内部apis问题已解决),以及我遇到了这个问题。日志的某些部分如下:
Phone/src/com/android/phone/CallNotifier.java:[601,32] cannot find symbol
symbol : variable EventLogTags
(CallNotifier.java
中的相应行是:EventLog.writeEvent(EventLogTags.PHONE_UI_MULTIPLE_QUERY);
)
Phone/src/com/android/phone/InCallScreen.java:[723,28] cannot find symbol
symbol : variable EventLogTags
(InCallScreen.java
中的相应行是:EventLog.writeEvent(EventLogTags.PHONE_UI_ENTER);
)
所以...它找不到类EventLogTags。实际上有一个文件Phone/src/com/android/phone/EventLogTags.logtags
,其中包含以下内容:
# See system/core/logcat/event.logtags for a description of the format of this file.
option java_package com.android.phone;
70301 phone_ui_enter
70302 phone_ui_exit
70303 phone_ui_button_click (text|3)
70304 phone_ui_ringer_query_elapsed
70305 phone_ui_multiple_query
显然,此文件告诉系统使用某些特定标记来记录系统中的重要事件。我做了一个完整的grep,但是找不到任何定义值PHONE_UI_ENTER
,PHONE_UI_MULTIPLE_QUERY
等的文件。这些只是日志,所以我可以注释掉这些并让它运行起来。但是我不想这样做,因为我需要在以后的整个aosp中构建它。所以我的问题是,如何在不修改任何文件的情况下使用maven进行编译?
答案 0 :(得分:0)
Android构建系统代码 - 根据需要从.logtags
文件生成Java类。请参阅:https://github.com/android/platform_build/blob/master/core/base_rules.mk
你需要解密make
规则并自己运行代码生成,我想。