Подтвердить что ты не робот

GetFileDescriptor возвращает null при чтении mp3 файлов из файлов расширения

Я загрузил и сохранил файлы расширения успешно. Но он падает, когда я пытаюсь воспроизвести mp3 внутри.

            ZipResourceFile expansionFile = APKExpansionSupport.getAPKExpansionZipFile(getApplicationContext(),
                    1, 0);

            InputStream fileStream = expansionFile.getInputStream("mysong.mp3");
            AssetFileDescriptor asd = expansionFile.getAssetFileDescriptor("mysong.mp3");
            MediaPlayer mediaPlayer = new MediaPlayer();
                    mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
                    mediaPlayer.setDataSource(asd.getFileDescriptor(), asd.getStartOffset(), asd.getLength());
                    asd.close();
                    mediaPlayer.prepare();
                    mediaPlayer.start();

Здесь logcat говорит, что входной поток и дескриптор файла равны нулю. Кто-нибудь может мне помочь?

4b9b3361

Ответ 1

Наконец, он решил.. Имя файла должно быть с полным путем.

AssetFileDescriptor asd = expansionFile.getAssetFileDescriptor("main.1.com.mypackage.app/mysong.mp3");