Ресурсы. Почему OpenFD зависит от типа файла?

Я помещаю файл alma_mater.kar в папку assets/sounds
При попытке получить AssetsFileDescriptor возникает ошибка

    AssetFileDescriptor afd = this.getResources().getAssets().openFd("sounds/alma_mater.kar");
]


Когда ставлю переименованный файл alma_mater.mid, ошибок нет. Почему?
Проект основан на Google API [Android 2.2] на eclipse
Мое устройство LG P500 (Optimus One) обновлено до V20d (Android 2.3.3)

03-15 10:23:15.959: W/System.err(32076): java.io.FileNotFoundException: этот файл нельзя открыть как файловый дескриптор; вероятно, он сжат
03-15 10:23:15.959: W/System.err(32076): at android.content.res.AssetManager.openAssetFd(собственный метод)
03-15 10:23:15.959 : W/System.err(32076): в android.content.res.AssetManager.openFd(AssetManager.java:330)


person Uniser    schedule 15.03.2012    source источник


Ответы (1)


Основываясь на быстром поиске в Google и содержании вашего исключения, я подозреваю, что Android обрабатывает файлы KAR как файлы "сохранить в архиве", а не MIDI-файлы. Есть ли какая-то причина, по которой вы не можете оставить его с именем .mid и просто проанализировать его как файл KAR?

person Nik Reiman    schedule 15.03.2012