НЕИСПРАВНОЕ ИСКЛЮЧЕНИЕ: GLThread 84: ошибки FileNotFoundException Android logcat [дубликаты]

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

10-28 08:00:53.528: E/AndroidRuntime(1203): FATAL EXCEPTION: GLThread 84
10-28 08:00:53.528: E/AndroidRuntime(1203): Process: com.mkgame.game1.android, PID: 1203
10-28 08:00:53.528: E/AndroidRuntime(1203): com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: playButton2.png
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:140)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.graphics.glutils.FileTextureData.prepare(FileTextureData.java:64)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.graphics.Texture.load(Texture.java:130)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:121)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:100)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:92)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.MKgames.game1.screen.MainMenuScreen.<init>(MainMenuScreen.java:38)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.MKgames.Game1.create(Game1.java:29)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.backends.android.AndroidGraphics.onSurfaceChanged(AndroidGraphics.java:236)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1512)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)
10-28 08:00:53.528: E/AndroidRuntime(1203): Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Error reading file: playButton2.png (Internal)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.backends.android.AndroidFileHandle.read(AndroidFileHandle.java:77)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:220)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:137)
10-28 08:00:53.528: E/AndroidRuntime(1203):     ... 10 more
10-28 08:00:53.528: E/AndroidRuntime(1203): Caused by: java.io.FileNotFoundException: playButton2.png
10-28 08:00:53.528: E/AndroidRuntime(1203):     at android.content.res.AssetManager.openAsset(Native Method)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at android.content.res.AssetManager.open(AssetManager.java:316)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at android.content.res.AssetManager.open(AssetManager.java:290)
10-28 08:00:53.528: E/AndroidRuntime(1203):     at com.badlogic.gdx.backends.android.AndroidFileHandle.read(AndroidFileHandle.java:75)
10-28 08:00:53.528: E/AndroidRuntime(1203):     ... 12 more

Я понимаю, что ошибка может быть очевидной из-за того, что файл не найден, но это должно быть так, поскольку его расположение в порядке, и когда я запускаю его как настольное приложение, файл в порядке (я скопировал все свои ресурсы рабочего стола в активы Android, они там точно такие же). Так в чем может быть проблема?

Вот где я установил изображение:

Texture playButtonTxture = new Texture(Gdx.files.internal("playButton2.png"));

person useruseruser    schedule 28.10.2014    source источник
comment
вы тестировали приложение на реальном устройстве? эмуляторы ненадежны   -  person Aashish Bhatnagar    schedule 28.10.2014
comment
@AashishVirendraKBhatnagar Я экспортировал apk своего приложения на свой телефон Android, и он все еще принудительно закрывается   -  person useruseruser    schedule 28.10.2014
comment
stackoverflow .com/questions/25138314/ это может вам помочь   -  person Aashish Bhatnagar    schedule 28.10.2014
comment
@AashishVirendraKBhatnagar Будет ли это место, где он ищет png? в android.content.res.AssetManager.openAsset (собственный метод), потому что он находится в папке ресурсов Android, поэтому я думаю, что это было бы неправильно? Если это так, как бы я тогда изменил, где он ищет файл? спасибо   -  person useruseruser    schedule 28.10.2014
comment
@AashishVirendraKBhatnagar, пожалуйста, обновите   -  person useruseruser    schedule 28.10.2014
comment
@useruseruser В какую папку в вашем проекте вы поместили playButton2.png? Рекомендую поместить его в assets/data, тогда вместо playButton2.png должно быть data/playButton2.png   -  person ilikeyoyo    schedule 05.11.2014


Ответы (1)


ваше использование.

texture = new Texture (Gdx.files.internal("YourPath/YourFile.png"));

с другой стороны, эмуляторы используют виртуальный диск, «чтобы знать, где они хранят вещи :)», не серьезно, возможно, ошибка исходит оттуда.

Изменить: в вашем проводнике пакетов

активы-->ваш файл.png

or

активы-->вашапапка-->вашфайл.png

NEW: Ваша ошибка в том, что в черновике у вас андроид, так как nombre.png является ярлыком Windows для фото и удаляете их копию фото, если вы действительно нажимаете перетаскивание, я думаю, что управление Windows также должно было скопировать

person Angel Angel    schedule 28.10.2014