Accesso ai file all'interno del file di espansione obb

Sto seguendo tutte le guide dei file di espansione ufficiali, ma non riesco a trovare. Non riesco ad accedere al file contenente obb che mi serve.

Ho bisogno di 6 file audio (80Mb) che sono "memorizzati" (non compressi) in un file zip e rinominati come 'main.2001.test.expansion.proj.obb' e memorizzati in '/ mnt / sdcard / Android / obb / test .expansion.proj /'

  • Come risolvere gli strumenti di Facebook: replace = "android: theme"?
  • come avviare un'attività secondaria nella stessa vista?
  • Cattura audio inviata al server di riconoscimento vocale di Google
  • Spostare il layout in su quando viene visualizzata la tastiera soft
  • Cambia priorità del button sul touch
  • SearchView in ListView con un adattatore personalizzato
  • Cercherò di accedere ai file

    String mainFileName = Helpers.getExpansionAPKFileName(this,true,2001); if(!Helpers.doesFileExist(this, mainFileName, 27959282L, false)) { //download } else { Log.d("test_file","file exist"); } ZipResourceFile expansionFile = APKExpansionSupport.getAPKExpansionZipFile(this,2001,2001); if(expansionFile!=null) { ZipEntryRO[] ziro = expansionFile.getAllEntries(); for (ZipEntryRO entry : ziro) { Log.d("test_files_zip", "fileZip filename: "+entry.getZipFileName()); try{ AssetFileDescriptor ro = entry.getAssetFileDescriptor(); Log.d("test_files_zip", "--fileZip getfiledescriptor.tostring: "+ro.getFileDescriptor().toString()); Log.d("test_files_zip", "--fileZip createinputstring.tostring: "+ro.createInputStream().toString()); AssetFileDescriptor assetFileDescriptor = expansionFile.getAssetFileDescriptor(entry.getZipFileName()+"/audio02.mp3"); if(assetFileDescriptor!=null) { Log.d("test_files_mp3", "length: "+assetFileDescriptor.getLength()); //checking it exists } }catch (IOException e){ Log.e("test_exp","IoExcp: "+e.getMessage()); } } } 

    In -> assetFileDescriptor = expansionFile.getAssetFileDescriptor (…..); Ho provato tutti i figurati e ho trovato in diversi luoghi, ma non sono riuscito a prendere il file. C'è un modo per get il file dal suo nome se è all'interno della zip?

    L'applicazione dovrebbe riprodurre questi file in un determinato ordine e non vogliamo scompattare i file e renderli "" pubblici "".


    Modificato. Rispondi a me stesso

    Trovato, era una linea che non capivo quando l'ho letto per la prima volta o semplicemente perderlo.

     ZipResourceFile expansionFile = APKExpansionSupport.getAPKExpansionZipFile(this,2001,2001); if(expansionFile!=null){ FileDescriptor fd = expansionFile.getAssetFileDescriptor("audio_01.mp3"); //or InputStream is = expansionFile.getInputStream("audio_01.mp3"); } 

  • Come impedire più istanze di un'attività quando viene lanciato con intenti diversi
  • È ansible avere più tipi di carattere nello stesso TextView?
  • Come implemento un elenco sezionato in Android?
  • Come installare Google Play Service 7.3.0 o superiore in Android Emulator?
  • Non vedere Geofence Transitions nel tutorial di Google su Geofencing
  • Ottieni il numero di cellulare su GSM Mobile utilizzando il codice android
  • One Solution collect form web for “Accesso ai file all'interno del file di espansione obb”

    Come ha suggerito Aarolama Bluenk, ecco il codice di risposta (replicato)

    Trovato, era una linea che non capivo quando l'ho letto per la prima volta o semplicemente perderlo.

     ZipResourceFile expansionFile = APKExpansionSupport.getAPKExpansionZipFile(this,2001,2001); if(expansionFile!=null){ FileDescriptor fd = expansionFile.getAssetFileDescriptor("audio_01.mp3"); //or InputStream is = expansionFile.getInputStream("audio_01.mp3"); } 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.