11

他のフォーラムに投稿された同じエラーがいくつか見つかりましたが、これを修正するための回答はまだ見つかりません.

新しくインストールした Ubuntu 12.10 で実行すると、

out/target/common/obj/PACKAGING/public_api.txt:22097: error 12: Class
android.telephony.gsm.SmsMessage changed static qualifier
prebuilts/sdk/api/18.txt:22054: error 9: Removed public constructor SmsMessage()
prebuilts/sdk/api/18.txt:22055: error 9: Removed public method    
android.telephony.gsm.SmsMessage.calculateLength
prebuilts/sdk/api/18.txt:22056: error 9: Removed public method  
android.telephony.gsm.SmsMessage.calculateLength
prebuilts/sdk/api/18.txt:22057: error 9: Removed public method  
android.telephony.gsm.SmsMessage.createFromPdu
prebuilts/sdk/api/18.txt:22058: error 9: Removed public method  
android.telephony.gsm.SmsMessage.getDisplayMessageBody
prebuilts/sdk/api/18.txt:22059: error 9: Removed public method 
android.telephony.gsm.SmsMessage.getDisplayOriginatingAddress
prebuilts/sdk/api/18.txt:22060: error 9: Removed public method 
android.telephony.gsm.SmsMessage.getEmailBody
prebuilts/sdk/api/18.txt:22061: error 9: Removed public method  
android.telephony.gsm.SmsMessage.getEmailFrom
..
..
..

gsm.SmsMessage には、ビルド環境に関する不明な問題があることは明らかです。

Java のバージョンを 1.7 から 1.6 に切り替えようとしました。しかし、それでもうまくいきません。

これを修正する方法を知っている人はいますか?

ありがとう

4

6 に答える 6

17

私の場合、javadocJDK6(Oracle)を使用する必要があるときに、OpenJDK7から問題が発生しました。

現在のところ、Android のマスター ブランチをビルドするには JDK7 が必要であり、Kitkat (4.4.4) を介して Gingerbread (2.3) をビルドするには JDK6 が必要です。

複数の JDK がある場合は、java/javac/javadoc に適したものを選択してください。次のコマンドを使用できます。

$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
$ sudo update-alternatives --config javadoc

選択の出力例java(上記の最初のコマンド):

代替 Java (/usr/bin/java を提供) には 3 つの選択肢があります。
  選択パスの優先度ステータス
-------------------------------------------------- ----------
  0 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 自動モード
※1 /usr/lib/jvm/java-6-oracle/jre/bin/java 1 手動モード
  3 /usr/lib/jvm/java-7-oracle/jre/bin/java 2 手動モード
Enter キーを押して現在の選択を保持するか [*]、または選択番号を入力します。
于 2014-10-13T20:52:15.657 に答える
5

広範な検索の後、最終的にこのエラーの原因を見つけましたhttps://groups.google.com/forum/#!msg/android-building/Xw34n7PQJsA/kieneMNt4LkJ。ソースの再ダウンロードが機能しない場合は、java、javac、および javadoc が 1.7 ではなくバージョン 1.6 を使用していることを確認してください。どうやら、javadoc 1.7 には、Android AOSP ビルド プロセスによって引き起こされる、ある種の不安定さがあります。これにより、apicheck で奇妙なエラーが発生します。

于 2014-03-24T14:31:05.847 に答える
1

ソースコードを再ダウンロードすることでエラーが解決されました。

したがって、同じエラーが発生した場合は、ソースを再ダウンロードすることをお勧めします。

エラーはなくなるはずです。

于 2013-09-21T14:59:22.517 に答える
1

問題は1.7のjavadocにありますが、実際に間違っているのは、Oracleから1.6に変更して「クリーンにする」と役に立たないことです。ソースを削除してダウンロードすると役立ちます。時間のかかるソースの再ダウンロードを避けるために、「make distclean」や「make mrproper」などの make ターゲットを探していました。何も見つかりませんでした。

于 2015-07-19T21:37:20.407 に答える
1

Android でソース コードを変更した場合は、「make otapackage」の前に「make update-api」を発行して、行った API の変更を更新する必要があります。

于 2014-10-23T03:15:26.953 に答える