Kann nicht in externen Speicher schreiben, es sei denn, die App wird nach Erteilen der Berechtigung neu gestartet

8

App konnte nicht in externen Speicher unter Android 6.0 schreiben (Ich teste auf Emulator), auch nachdem WRITE_EXTERNAL_STORAGE zur Laufzeit gewährt wurde; es sei denn, die App wird beendet und neu gestartet.

Snippet von AndroidManifest.xml

%Vor%

build.gradle

%Vor%

Immer wenn ich auf externen Speicher schreiben muss (zur Sicherung), überprüfe ich, ob ich eine Berechtigung habe oder nicht.

%Vor%

Ich habe auch die folgenden

%Vor%

Wenn die Berechtigung vom Benutzer erteilt wird, der folgende Code

%Vor%

erzeugt

%Vor%

Wenn die App nach Erteilen der Berechtigung beendet und neu gestartet wird, läuft alles einwandfrei und die Sicherungsdatei wird im externen Speicher erstellt.

Bitte schlagen Sie vor, was ich falsch mache.

    
YogeshM 11.10.2015, 05:51
quelle

2 Antworten

3

Fügen Sie die folgende Zeile in der onRequestPermissionsResult () -Methode hinzu, nachdem Sie die Berechtigungszuweisung erfolgreich überprüft haben.

%Vor%

Bearbeiten: Überprüfen Sie, ob Sie die Ziel-SDK-Version auf 23 gesetzt haben. Wenn Sie das bereits getan haben und es nicht funktioniert (oder Sie es nicht auf 23 setzen möchten), als Sie vielleicht haben gehen Sie mit dieser Lösung (tötet den App-Prozess).

    
Harish Sharma 16.11.2015 10:01
quelle
-1

Versuchen Sie ein neues Gerät zu emulieren (zum Beispiel ein 6.0 x86_64 mit Google APIs). Ich hatte genau das gleiche Problem und löste es, indem ich auf einem anderen Emulator lief.

    
Cosmin Badulescu 27.04.2016 12:22
quelle