Код останавливается на MyObjectBox.build (), но без ошибок - PullRequest
1 голос
/ 19 февраля 2020

У моего приложения есть проблемы, которые могут быть или не быть связаны с ObjectBox.

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

Мой код

public class DB {

    private File boxStoreDir;
    private static BoxStore store;

    public DB() {
        try {
            Gdx.app.error("aidan","8a");
            createMyObjectBox();
        } catch (IOException e) {
            Gdx.app.error("aidan"," error 8a - "+e.getMessage());
            e.printStackTrace();
        }
    }

    private void createMyObjectBox() throws IOException {
        FileHandle fileHandle = Gdx.files.local("objectstorefile");
        Gdx.app.error("aidan","8b - file="+fileHandle.path());
        if(!fileHandle.isDirectory()) {
            Gdx.app.error("aidan","8b1 - having to call fileHandle.mkdirs()");
            fileHandle.mkdirs();
        }
        boxStoreDir = fileHandle.file();

        if(store == null) {
            Gdx.app.error("aidan","8c - MyObjectBox.builder().directory(boxStoreDir).build()");
            store = MyObjectBox.builder().directory(boxStoreDir).build();
            Gdx.app.error("aidan","8d - store="+store.getNativeStore());
        }
    }
}

и журналы ошибок показывают ...

02-19 20:59:02.052 16625 16694 E aidan   : 8
02-19 20:59:02.052 16625 16694 E aidan   : 8a
02-19 20:59:02.052 16625 16780 W Ads     : Not retrying to fetch app settings
02-19 20:59:02.054 16625 16694 E aidan   : 8b - file=objectstorefile
02-19 20:59:02.054 16625 16694 E aidan   : 8c - MyObjectBox.builder().directory(boxStoreDir).build()
02-19 20:59:02.055  4439  4977 W GamesServiceBroker: Client connected with SDK 200414000, Services 200414037, and Games 157090048
02-19 20:59:02.070  4439 14826 W Ads     : App does not have the required permissions to get location
02-19 20:59:02.078 16625 16662 D skia    : --- Failed to create image decoder with message 'unimplemented'
02-19 20:59:02.080  4439  4569 I PeopleChimeraService: onService. callbacks = zwr@66e7b0d, request = com.google.android.gms.common.internal.GetServiceRequest@f968ac2

1 Ответ

0 голосов
/ 19 февраля 2020

"Приложение не имеет необходимых разрешений для определения местоположения", кажется уместным.

Пожалуйста, попробуйте Android стандартный способ построения ObjectBox :

    boxStore = MyObjectBox.builder()
            .androidContext(context.getApplicationContext())
            .build();

Это работает?

...