Ich versuche, das Expansion Pack-Dateien (OBB) In Android im Anschluss an die Führung zu testen hier: http://developer.android.com/google/play/expansion-files.htmlWohin mit der OBB-Datei, um Android-Erweiterungspack-Dateien (OBB) auf meinem Nexus 4 zu testen?
ich im Schritt bin, wo ich meine App auf meinem Nexus testen 4.
ich erzeugen meine .obb Datei mit jobb und es in dem Gerät in diesem Ort adb-geschoben:
/mnt/shell/emulated/0/Android/obb/my.package/main.1.my.package.obb
Wenn die Anwendung ausführt es die Datei nicht finden.
Methode:
Helpers.doesFileExist(context, fileName, xf.mFileSize, false)
return false für meine Datei.
ich gedebuggt und fand heraus, es wird in der Datei suchen:
Helpers.generateSaveFileName(c, fileName)
Der/storage/emulierten/0, zurückgegeben von Umwelt:
/storage/emulated/0/Android/obb/my.package/main.1.my.package.obb
Insbesondere dies der Weg zurück ist .getExternalStorageDirectory() existiert nicht beim Durchsuchen des Geräts mit der AdB-Shell.
Aber es tut zur Laufzeit, in der App, ich auch überprüft, was es enthält: Es enthält fast die gleichen Dinge, die ich in/mnt/shell/emuliert/0 gefunden, enthält das Android/obb dir, das leer ist .
Wie fand ich den Weg aus /mnt/shell/emulated/0/Android/obb/my.package/main.1.my.package.obb, wo ich meine OBB-Datei abgelegt:
$ adb shell
$ ls -ld sdcard
lrwxrwxrwx root root 2013-10-16 17:34 sdcard -> /storage/emulated/legacy
$ ls -ld /storage/emulated/legacy
lrwxrwxrwx root root 2013-10-16 17:34 legacy -> /mnt/shell/emulated/0
Und darin fand ich bereits das Android/obb-Verzeichnis, leer.
Die Frage ist also: Wo sollte ich meine OBB-Datei setzen, damit sie zur Laufzeit in der richtigen Position ist?
Ich habe alles gesagt, was es:
einen Entwurf Anwendung auf dem Markt erstellt der öffentliche Schlüssel
erzeugt eine zufällige Anordnung von 20 Byte (Salz)
integriert zu bekommen play_licensing/library und play_apk_expansion/download_library
schrieb meinen Service/Empfänger
hat die Überprüfung mit den Helfern etc .. genau wie die Dokumentation sagen.
Ich nehme an, alles funktioniert, aber ich kann noch nicht im Play Store veröffentlichen! Ich muss lokal testen und ich werde meine Obb-Datei in dieser Anfangsphase der Entwicklung ziemlich oft ändern müssen.
Ich kann nicht auf dem Emulator testen, weil ich 3D und Gerätekamera verwende.
sollte dies nicht den Trick machen? https://developer.android.com/reference/android/os/storage/StorageManager.html#getMountedObbPath%28java.lang.String%29 –
Was Sie verbunden haben, ist ABSOLUTELY die richtige API, um Code zu verwenden, aber wir sprechen wissen, wo Sie die obb-Datei physisch auf dem Gerät platzieren können, damit Sie Ihre App testen können, ohne sie auf Google Play veröffentlichen zu müssen. Während Sie gegen eine Obb-Datei entwickeln, generieren Sie Ihre Obb-Datei auf Ihrem PC und müssen sie dann irgendwo auf das Dateisystem des Geräts legen, um sie zu testen. Hier geht es darum, den richtigen Pfad des Dateisystems zu finden, in den die OBB-Datei hochgeladen werden soll. –