0

我正在尝试为 sdk 1.6(也称为 API 级别 4 或甜甜圈版本)编译和运行Android 相机。

虽然minSdkVersionAndroidManifest 中没有,但它显然不能在甜甜圈设备上运行。事实上,如果使用 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 开始引入的“甜甜圈”标签中使用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,并且很难在低于其目标的 API 4 级别上工作。但是,此处的修订版应该可以正常编译。

于 2010-08-18T16:15:44.220 回答