Ich habe ein Problem mit meiner Android App. Ich verwende MediaStore.ACTION_IMAGE_CAPTURE
intent, um ein Bild von der Kamera aufzunehmen. Es funktionierte alle die meisten Geräte, aber ich habe die folgenden Absturzfehler auf DroidX-Gerät von Android-Markt.
Ich denke, dass imageCaptureUri
in diesem Fall nicht null sein kann. Es ist also nicht die Ursache.
Hast du irgendwelche Ideen? Ist es ein Firmware-Fehler?
java.lang.NullPointerException um android.content.ContentResolver.openInputStream (ContentResolver.java:286) beim com.eb.android.activity.AddActivity.getBase64Receipt (AddActivity.java:193) beim com.eb.android.activity.AddActivity.publishReceipt (AddActivity.java:204) unter com.eb.android.activity.AddActivity.access $ 0 (AddActivity.java:203) unter com.eb.android.activity.AddActivity $ 1.run (AddActivity.java:50) um java.lang.Thread.run (Thread.java:1102)
java.lang.NullPointerException um android.content.ContentResolver.openInputStream (ContentResolver.java:288) beim com.eb.android.activity.AddActivity.getBase64Receipt (AddActivity.java:193) beim com.eb.android.activity.AddActivity.publishReceipt (AddActivity.java:204) unter com.eb.android.activity.AddActivity.access $ 0 (AddActivity.java:203) unter com.eb.android.activity.AddActivity $ 1.run (AddActivity.java:50) um java.lang.Thread.run (Thread.java:1096)
Dies ist meine Implementierung:
%Vor%Sind Sie sicher, dass der Bildbeschneidungsmodus erzwingt
? %Vor%funktioniert ordnungsgemäß für das von Ihnen verwendete Gerät. Korrigiere mich, wenn ich falsch liege, aber es ist kein sicherer und nicht gut dokumentierter Ansatz. Hier finden Sie ein Beispiel für Arbeitscode ohne Zuschneiden.
UPDATE: Das Problem, mit dem Sie konfrontiert sind, hat eine lange Geschichte, auch bei SO:
Problem, bei dem ich festgestellt habe, war die sofortige Verwendung des Bildausschnitts, nachdem das Bild von der Kamera aufgenommen wurde. Es ist auch nicht kompatibel mit verschiedenen Android-Versionen, also wenn es für 1,5 funktioniert funktioniert es vielleicht nicht für 2.3. Definitiv stimmt etwas nicht, wie aus den Posts der Android Developer Group hervorgeht: