Как мне установить H2? - PullRequest
0 голосов
/ 16 мая 2018

Я новичок в разработке для Android.

Я портирую приложение для ПК на Android-устройство RealWear HMT1. Я не хочу переписывать свой код, поэтому я собираюсь попробовать использовать Hibernate с H2db, оба из которых ДОЛЖНЫ работать на Android.

К сожалению, я не нашел никаких инструкций по установке H2 на Android. H2 - это файл .jar, и до сих пор я работал только с APK через Android studio.

Как установить H2 на Android?

Ответы [ 3 ]

0 голосов
/ 01 июня 2018

add graddle

dependencies {
    compile 'com.h2database:h2:1.4.196'
    runtimeOnly 'com.h2database:h2:1.4.196'
}

h2 отлично работает в Adnroid, просто добавьте зависимость в gradle.app.Затем вы должны указать, в какой базе данных вы собираетесь работать:

    try{
        Class.forName("org.h2.Driver");
    }
    catch(ClassNotFoundException e){System.out.println(e);}

    try{
        CONN_STR = "jdbc:h2:/data/data/com.example.example/data/dbfile;FILE_LOCK=FS;PAGE_SIZE=1024;CACHE_SIZE=8192";
        conn = DriverManager.getConnection(CONN_STR);
    }
    catch (SQLException ex)
    {
    }
0 голосов
/ 28 ноября 2018

Я думаю, может, стоит взглянуть на Realm, он может работать на мобильном андроиде, ios.также я видел, что некоторые блоги используют его для рабочего стола Windows .

0 голосов
/ 24 мая 2018

Как указано в комментарии выше, H2 не может быть установлен на Android как есть. Я полагаю, можно взять исходный код и перекомпилировать его для Android, но затраты времени и ухудшения перевешивают преимущества.

Hibernate также не может быть легко использован, особенно его реализация JPA. Hibernate ищет информацию о подключении / конфигурации в каталоге META-INF файла .jar. Я понятия не имею, существует ли такой каталог или может быть помещен в APK таким образом, чтобы Hibernate мог его найти. Более того, виртуальная машина Dalvik имеет существенные отличия от виртуальной машины Oracle Java, и большая часть функциональности Hibernate может быть даже недоступна на Android.

Я выбрал Java для разработки из-за ее философии «Однажды запусти, где угодно», но Google, похоже, отверг эту философию. Похоже, что «Пиши один раз, беги куда угодно, кроме Android, там, где нужно писать снова».

...