MIDP Java-реализация БД SQLite
Есть ли какая-либо MIDP-реализация SQLite db, доступная для использования sqlite db внутри мидлета, а не для использования RMS. Конечно, есть Floggy и OpenBaseMovil, однако они основаны на RMS, но есть ли реализации, позволяющие выполнять операции в файле базы данных sqlite?
2 ответа
Есть 2 способа сделать что-то подобное:
возьмите открытый исходный код SQLite (написанный на C) и напишите что-то похожее на JavaME. никто еще этого не делал. В настоящее время предпринимаются усилия по написанию версии SQLite на C# для Windows Mobile, но вы должны задаться вопросом, какое влияние окажет переход на интерпретируемый язык без контроля над производительностью доступа к файловой системе.
определить и реализовать API JavaME, который обращается к нативному SQLite через что-то вроде JNI. Обычно это чрезвычайно сложно, если вы не являетесь производителем телефона или одним из его близких партнеров. Я подозреваю, что Android делает это, чтобы вы могли посмотреть на его источники в этой области, но он не будет MIDP-совместимым. Официального JSR для API, подобного SQLite, пока нет.
Спецификация J2ME не определяет JNI. Быть ISV и пытаться писать нативные привязки не подлежит сомнению. Эталонная реализация Sun действительно определяет нечто, называемое KNI - но тогда вы должны быть OEM, чтобы иметь возможность сделать это и отправить ВМ вместе с телефоном.