Почему моя игра Android Studio внезапно падает? - PullRequest
0 голосов
/ 07 июня 2019

Я делаю игру в Android Studio, используя LibGDX. Игра почти закончена, но у меня проблемы с запуском игры на старом телефоне. Первоначально я сделал и протестировал игру на рабочем столе, и только недавно изменил ее, чтобы она могла работать на мобильном устройстве, изменяя конфигурации. В игре нет ошибок, и она отлично работает на рабочем столе. На эмуляторе он работал полностью, просто невероятно медленно, поэтому я перешел на реальное устройство.

Я запускаю игру на старом телефоне moto g, и игра правильно загружается и открывается на телефоне. Телефон работает на Android 5.1 и не может быть обновлен в дальнейшем. Я сделал свою игру на Android Studio версии 3.1.4 и не могу обновить ее либо из-за несовместимости LibGDX с более новыми моделями Android Studio.

Первый экран, который открывается, - это мое Меню, в котором есть только кнопка воспроизведения. Музыка для Меню воспроизводится, и когда вы нажимаете кнопку воспроизведения, слышен звук нажатия кнопки, но затем экран на секунду становится черным, и игра закрывается. Нет сообщения «К сожалению, приложение остановлено», игра просто закрывается. Он по-прежнему открыт в фоновом режиме, который вы можете увидеть, глядя на все открытые «вкладки» на телефоне. Если вы выберете эту вкладку, игра снова откроется на экране меню, и проблема снова возникнет.

Думая, что проблема была в ошибке, я посмотрел на logcat для телефона, когда игра запускалась. Единственные красные ошибки, которые появились, были следующие:

4727-4785/com.mygdx.game E/MediaPlayer: Should have subtitle controller already set

Эта ошибка повторялась 6 раз подряд, и это были последние строки кода перед тем, как я нажал кнопку воспроизведения. После этого в logcat появились следующие три строчки, после чего игра закончилась:

4727-4753/com.mygdx.game W/AudioTrack: AUDIO_OUTPUT_FLAG_FAST denied by client
4727-4753/com.mygdx.game W/linker: libgdx-box2d.so: unused DT entry: type 0x6ffffffe arg 0xf4fc
4727-4753/com.mygdx.game W/linker: libgdx-box2d.so: unused DT entry: type 0x6fffffff arg 0x2

В моем logcat нет других ошибок, поэтому я не знаю, что могло вызвать эту ошибку, и я довольно долго искал решение.

Edit:

Когда моя игра заканчивается, нет стека трассировки, указывающей, что было сгенерировано исключение или что-то в этом роде. Красного кода больше нет после окончания игры или непосредственно перед ее окончанием. Как будто игра просто останавливается, я не могу разглядеть ошибки, которая ее вызывает.

...