Libgdx AssetManager работает в затмении, но не на работающей банке

Код выглядит примерно так:

if (Gdx.app.getType() == ApplicationType.Android) path = "data/images/";
if (Gdx.app.getType() == ApplicationType.Desktop) path = "./bin/data/images";

(если я использую "data/images/" для рабочего стола, я получаю сбой).

assetmanager.load(path + fileName), assetmanager.finishLoading() и позже assetmanager.get(path + fileName) отлично работает в Eclipse, а также на Android, но когда я создаю работающий.jar и запускаю его из консоли, я получаю Asset not loaded: ./bin/data/images/image.jpg, Поэтому по какой-то причине он не может получить доступ к папке данных внутри моего архива.jar. Как это исправить?

Спасибо!

1 ответ

Решение

Что ж, при использовании Gdx.files.internal("data/images/").list() в настольном приложении оно всегда возвращает пустой список. Похоже ./bin/data/images/ не был затронут этим. Вот почему "data/images/" работал только на Android. Решение состоит в том, чтобы добавить каждое изображение вручную, вместо того, чтобы перебирать папку. Спасибо за помощь!

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