2013-01-18 5 views

Antwort

29

Trotz der etwas kryptischen NullPointerException zu nennen, dass die tatsächlichen Ausgaben geworfen wird, ist, dass mein applicati on hatte keine WRITE_EXTERNAL-Berechtigung, daher lehnte das System meinen Versuch ab, das ExternalDir zum Zwischenspeichern zu verwenden. Leider geschah dies bei einer ausreichend niedrigen Stufe in dem Code, der beim Anzeigen von Bitmaps effektiv verwendet wurde, dass die Ausnahme nicht SecurityException anzeigt, wie es normalerweise der Fall wäre, wenn man ohne die entsprechende Erlaubnis auf die SD-Karte schreiben würde.

zu beheben einfach hinzufügen:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 

zu Ihrem Manifest.

+7

On ab Android 4.4 diese Berechtigung nicht mehr erforderlich ist für Cache Zweck Sie diese Berechtigung mit dem maxSdkVersion paremeter verwenden können: Climbatize

+5

Und auf einigen Lollipop-Builds ist das kaputt, also schlage ich vor, die max sdk zu entfernen ... Dumm ich weiß –

+1

@Climbatize meine App hat den gleichen Absturz für SDK-Versionen 19 und 22 gemeldet. – DroidHeaven

7

Dies kann auch passieren, wenn Sie auf einem Gerät oder Emulator ohne externen Speicher ausgeführt werden.

+0

Zumindest das ist unprofitabel, solche Geräte auf dem Markt des Benutzers zu propagieren –

+0

Änderte meine Antwort, Android-Geräte ohne externen Speicher sind nicht so selten. Kann auch vorkommen, wenn das Gerät über einen externen Speicher verfügt, die Karte jedoch nicht vorhanden oder nicht ausgehängt ist. –

+0

Ich bekomme diesen Fehler auf Genymotion Emulator. – agamov

Verwandte Themen