0

これは私の前の質問に関連しています。Phonemavenを使用してandroid4.0.4からアプリケーションをビルドしようとしています(依存関係としてframework_intermediatesを追加しているため、内部APIの問題が解決されています)。この問題が発生しました。ログの一部は次のとおりです。

Phone/src/com/android/phone/CallNotifier.java:[601,32] cannot find symbol
symbol  : variable EventLogTags

(の対応する行CallNotifier.javaEventLog.writeEvent(EventLogTags.PHONE_UI_MULTIPLE_QUERY);:)

Phone/src/com/android/phone/InCallScreen.java:[723,28] cannot find symbol
symbol  : variable EventLogTags

(の対応する行InCallScreen.javaEventLog.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

どうやら、このファイルは、システム内の重要なイベントをログに記録するためにいくつかの特定のタグを使用するようにシステムに指示します。PHONE_UI_ENTER完全なgrepを実行しましたが、値などを定義するファイルが見つかりませんでしたPHONE_UI_MULTIPLE_QUERY。これらは単なるログであるため、コメントアウトして機能させることができます。しかし、後でaosp全体の中にこれを構築する必要があるため、これは行いたくありません。だから私の質問は、ファイルを変更せずに、mavenを使用してこれをコンパイルするにはどうすればよいですか?

4

1 に答える 1

0

.logtagsAndroid ビルド システムは、必要に応じてファイルから Java クラスをコード生成します。参照: https://github.com/android/platform_build/blob/master/core/base_rules.mk

ルールを解読し、そのコード生成を自分で実行する必要があるとmake思います。

于 2012-08-05T10:37:54.703 に答える