Ошибка при доступе к файлу obb

Я использую расширение файла в своем проекте для доступа к аудио, видео и файлам изображений из папки obb. Мой файл Obb имеет вид: main.1.com.example.sample ---> содержит три папки с именами Images, Video и Audio ---> Теперь он содержит разные файлы .mp4, .mp3, .jpg, которые у меня есть. мой файл obb в Android/obb/com.example.sample/main.1.com.example.sample Теперь я пытаюсь получить доступ к файлу .mp4 внутри папки Video, используя следующий код:

ZipResourceFile expansionFile = null;
    try {
        expansionFile = APKExpansionSupport.getAPKExpansionZipFile(this,1,0);
         Log.e("expansion",">>>>>"+expansionFile);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    if(expansionFile!=null){
            AssetFileDescriptor fd = expansionFile.getAssetFileDescriptor("Video/v1.mp4");
            Log.e("AFDDDDDDDD",">>>>>"+fd);
        }

но я получаю исключение: 07-30 16:14:24.685: D/zipro(22542): Zip: EOCD не найден, /storage/emulated/0/Android/obb/com.example.sample/main.1.com .example.sample.obb не является архивом

07-30 16:14:24.685: W/zipro(22542): неправильное смещение (каталог 191367812, размер 1771611666, eocd -1) 07-30 16:14:24.685: W/System.err(22542): java.io .IOException 07-30 16:14:24.695: W/System.err(22542): в com.android.vending.expansion.zipfile.ZipResourceFile.addPatchFile(ZipResourceFile.java:353) 07-30 16:14:24.695: W/System.err(22542): в com.android.vending.expansion.zipfile.ZipResourceFile.(ZipResourceFile.java:189) 07-30 16:14:24.695: W/System.err(22542): в com. android.vending.expansion.zipfile.APKExpansionSupport.getResourceZipFile(APKExpansionSupport.java:67) 07-30 16:14:24.695: W/System.err(22542): в com.android.vending.expansion.zipfile.APKExpansionSupport.getAPKExpansionZipFile (APKExpansionSupport.java:77)

и не может получить доступ напрямую из файла obb. Пожалуйста, предложите решение и почему я получаю это исключение?

Спасибо


person Nikki    schedule 30.07.2013    source источник


Ответы (1)


Исключение Bad Offesets возникает, когда путь к файлу obb неверен из того места, где извлечен файл_ассета_дескриптор. Вот почему он выдавал эту ошибку во время выполнения.

person Nikki    schedule 08.08.2013