2015-12-15 14 views
5

Auf Android 6-Geräten haben wir festgestellt, dass Erweiterungsdateien jetzt die Berechtigung WRITE_EXTERNAL_STORAGE zur Laufzeit benötigen, die der Benutzer ablehnen kann. Dadurch können wir den App-Start nicht fortsetzen .Erweiterungsdateien unter Android 6

Gibt es eine Möglichkeit, zu verhindern, dass die Erweiterungsdateien die WRITE_EXTERNAL_STORAGE verwenden oder den Benutzer davon abhalten, zu leugnen?

Wenn diese Anforderung bei der Verwendung von Erweiterungsdateien angezeigt werden muss, wie sollen wir das dann elegant handhaben?

+0

den Benutzer erklären, dass Ihre Anwendung ohne diese Erlaubnis nicht funktioniert, und es dann wieder anfordern. – 1615903

+0

Das ist nicht möglich, besonders wenn sie sich dafür entscheiden, nie wieder danach gefragt zu werden –

Antwort

0

Ich habe auch dieses Problem. Um es für API 23 aufzulösen, lade ich die .obb-Datei in das Dateiverzeichnis der privaten App statt in das Verzeichnis obb, auf das meine App keinen Zugriff hat. Sie können meine Lösung here überprüfen. Verbrauch:

repositories { 
    maven { url 'https://dl.bintray.com/alexeydanilov/apk-expansion' } 
} 
dependencies { 
    compile 'com.danikula.expansion:expansion:[email protected]' 
    compile 'com.danikula.expansion:license:[email protected]' 
    compile 'com.danikula.expansion:zip:[email protected]' 
} 

Sehen Sie die neuesten Versionen here.