tags:

views:

38

answers:

1

I am trying to compile and run the Android Camera for sdk 1.6 (also called API level 4 or Donut release).

While there is no minSdkVersion in the AndroidManifest, it clearly does not run on a donut device. In fact, if compiled with sdk 2.2 the camera will crash with a NoSuchMethodError execption on an avd or a G1 with sdk 1.6.

I tried also checking out the [donut-release] tag, but, strangely, it won't even compile giving many errors like:

[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),

In particular, I really do not understand why ExifInterface is used in the "donut" tag when it has been introduced since API level 5. Am I missing something?

Thank you very much for any help.

A: 

Are you trying to use the latest revision? It takes advantage of a whole bunch of new APIs and would be very difficult to get working on an API 4 levels below its target. The revision at http://android.git.kernel.org/?p=platform/packages/apps/Camera.git;a=tree;h=refs/heads/donut-release2;hb=refs/heads/donut-release2, however, should compile just fine.

QRohlf
Hi QRohlf, thanks for the answer. Unfortunately the errors shown in my post come frome the `donut-release` with API 4. You can see that the file [MenuHelper.java](http://android.git.kernel.org/?p=platform/packages/apps/Camera.git;a=blob_plain;f=src/com/android/camera/MenuHelper.java;hb=refs/heads/donut-release2) imports `ExifInterface`.
mrucci