—————更新—————
似乎HTC Desire相机和这个版本的Phonegap存在某种问题.问题似乎是HTC在Android上返回相机规格的方式.
—————更新—————
我一直在使用phonegap重写我以前的应用程序的代码,但不是我需要使用相机API.当我在真正的手机上使用它时拍摄照片后崩溃了,我在SendLog中遇到了这个错误.
- 10-07 09:44:46.980 D/AndroidRuntime( 1626): Shutting down VM
- 10-07 09:44:46.980 W/dalvikvm( 1626): threadid=1: thread exiting with uncaught exception (group=0x400259f8)
- 10-07 09:44:46.989 W/CameraThread( 1159): Release Camera - set mIsLastCameraClosed to true
- 10-07 09:44:46.989 W/CameraThread( 1159): CameraHandler Message - CLOSE_CAMERA end
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): FATAL EXCEPTION: main
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null,request=33,result=-1,data=Intent { act=inline-data (has extras) }} to activity {com.theinit.example/com.theinit.example.TestPhoneGapActivity}: java.lang.NullPointerException
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.app.ActivityThread.deliverResults(ActivityThread.java:3734)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3776)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.app.ActivityThread.access$2800(ActivityThread.java:135)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2166)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.os.Handler.dispatchMessage(Handler.java:99)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.os.Looper.loop(Looper.java:144)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.app.ActivityThread.main(ActivityThread.java:4937)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at java.lang.reflect.Method.invokeNative(Native Method)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at java.lang.reflect.Method.invoke(Method.java:521)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at dalvik.system.NativeStart.main(Native Method)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): Caused by: java.lang.NullPointerException
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.content.ContentResolver.openInputStream(ContentResolver.java:286)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at com.phonegap.CameraLauncher.onActivityResult(CameraLauncher.java:248)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at com.phonegap.DroidGap.onActivityResult(DroidGap.java:1346)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.app.Activity.dispatchActivityResult(Activity.java:3931)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): at android.app.ActivityThread.deliverResults(ActivityThread.java:3730)
- 10-07 09:44:46.989 E/AndroidRuntime( 1626): ... 11 more
有谁知道为什么会这样?
这是我的Camera.js
这是我的Camera.js
- var options = { quality : 75,destinationType : Camera.DestinationType.DATA_URL,sourceType : Camera.PictureSourceType.CAMERA,allowEdit : true,targetWidth: 100,targetHeight: 100 };
- function capturePhoto() {
- // Take picture using device camera and retrieve image as base64-encoded string
- navigator.camera.getPicture(onPhotoDataSuccess,onFail,options);
- }
- function onPhotoDataSuccess() {
- // Uncomment to view the base64 encoded image data
- var theHTML = '';
- theHTML = '<div id="info">CameraSuccess</div>';
- document.getElementById('main').innerHTML = theHTML;
- }
- function onFail(message) {
- // Called if something bad happens.
- alert('Failed because: ' + message);
- }
希望能帮助到你
谢谢大家