Как обойти ограничение на размер необработанного файла AAPT в Android Studio

Я добавил тег Android Studio, потому что, хотя я использую Android Studio, я не был уверен, проблема ли это в Android или в Studio ...

Итак, у меня есть это конкретное приложение, которое я хочу сделать, для которого потребуется конкретный аудиофайл, который будет длиться около 1,5 часов. Естественно, это означает, что размер файла будет очень большим. Размер файла, который я хотел использовать (256 кбит / с), составлял около 170 МБ. WAAAAY, видимо, великоват для Android. Я провел некоторое тестирование, и хотя файл размером 65860 КБ слишком велик, приемлемым является файл размером 65515 КБ. Я также могу без проблем делать несколько файлов размером 65515 или меньше.

Теперь проблема, которую я получаю, когда я пытаюсь использовать файл размером более 65515 КБ, я получаю неоднозначное сообщение об ошибке AAPT2 в консоли:

https://pastebin.com/eJvtF1NE

Error text, no code

И когда я нажимаю Toggle View, чтобы посмотреть на вывод gradle, я вижу

{pathToSource}\app\build\intermediates\res\merged\debug\raw_ee7.mp3.flat: error: failed to read data meta data.

Я, честно говоря, не знаю, что это значит, но похоже, что это как минимум связано с тем, что это большой файл. Я пробовал опцию android.enableAapt2=false в gradle.properties, но хотя операция Clean Build завершается успешно, я получаю предупреждение о том, что она устарела и больше не должна использоваться, и когда я пытаюсь запустить или отладить, я получаю сообщение об ошибке

Error while generating dependencies split APK
com.android.ide.common.process.ProcessException: Failed to execute aapt

У меня возникла идея попробовать отключить aapt2 из этого другого вопроса здесь, на SO:

https://stackoverflow.com/questions/46961577/android-studio-error-failed-to-read-metadata-after-update-to-3-0-0

Но id больше не работает, и похоже, что Google его еще не исправил.

Могу ли я что-нибудь сделать, пока они сами не исправят это, кроме смены IDE? Мог, потому что только начал разрабатывать это приложение. Я не могу разрезать этот файл на более мелкие части, потому что для воспроизведения потребуется степень точности, которую я не могу получить при обработке нескольких экземпляров MediaPlayer.

Вы пробовали ./gradlew --stop из командной строки после отключения aapt2 в gradle.properties? Google рекомендует сделать это после того, как вы отключили appt2 из gradle.properties.

Sagar 30.03.2018 06:24

Просто попробовал сейчас. Получил сообщение об остановке демона, снова запустил приложение, но по-прежнему получал ошибку «Не удалось выполнить aapt».

Malkierian 30.03.2018 06:39

Обычно эта ошибка возникает, когда ваша buildToolsVersion устарела. Какая у вас версия buildTools? и нужно было попытаться синхронизировать проект с файлом gradle?

Sagar 30.03.2018 06:48

27.0.3 Я едва установил Studio 2 дня назад.

Malkierian 30.03.2018 06:53

Это ошибка в AAPT2. Он еще не обрабатывает файлы такого размера.

Izabela Orlowska 03.04.2018 13:02
1
5
443
0

Другие вопросы по теме