0

Android Camera for SDK 1.6 (API レベル 4 または Donut リリースとも呼ばれます)をコンパイルして実行しようとしています。

AndroidManifest にはありませminSdkVersionんが、明らかにドーナツ デバイスでは実行されません。実際、sdk 2.2 でコンパイルすると、avd または SDK 1.6 の G1 でカメラが NoSuchMethodError 実行でクラッシュします。

[donut-release] タグもチェックしてみましたが、奇妙なことに、次のような多くのエラーが発生してコンパイルすらできません。

[javac] /home/mrucci/camtest2/src/com/android/camera/ImageManager.java:41: cannot find symbol
[javac] symbol  : class DrmStore
[javac] location: package android.provider
[javac] import android.provider.DrmStore;
[javac]                         ^
[javac] /home/mrucci/camtest2/src/com/android/camera/Util.java:32: cannot find symbol
[javac] symbol  : class MediaMetadataRetriever
[javac] location: package android.media
[javac] import android.media.MediaMetadataRetriever;
[javac]                      ^
[javac] /home/mrucci/camtest2/src/com/android/camera/MenuHelper.java:29: cannot find symbol
[javac] symbol  : class ExifInterface
[javac] location: package android.media
[javac] import android.media.ExifInterface;
....
[javac]                      ^
[javac] /home/mrucci/camtest2/src/com/android/camera/ActionMenuButton.java:81: cannot find symbol
[javac] symbol  : variable mScrollX
[javac] location: class com.android.camera.ActionMenuButton
[javac]                           mScrollX + mRight - mLeft),
[javac]                           ^
[javac] /home/mrucci/camtest2/src/com/android/camera/ActionMenuButton.java:81: cannot find symbol
[javac] symbol  : variable mRight
[javac] location: class com.android.camera.ActionMenuButton
[javac]                           mScrollX + mRight - mLeft),

特に、 API レベル 5 から導入されたのに、なぜ「donut」タグでExifInterfaceが使用されているのか、よくわかりません。

4

2 に答える 2

1

これらのクラスの一部は、@hide注釈を使用して SDK から隠されています。なので、aospを全てプルダウンしてビルドしないとビルドできません。

https://github.com/android/platform_frameworks_base/blob/donut-release/media/java/android/media/MediaMetadataRetriever.java

于 2016-08-07T03:20:28.713 に答える
0

最新のリビジョンを使用しようとしていますか? たくさんの新しい API を利用しており、ターゲットの 4 レベル下の API に取り組むのは非常に困難です。ただし、ここのリビジョンは問題なくコンパイルされるはずです。

于 2010-08-18T16:15:44.220 に答える