Я нахожусь в процессе разработки приложения для Android и не могу решить, следует ли мне использовать Ormlite для обновления и извлечения данных в сочетании с Android Content Provider. Поставщик контента будет использоваться в первую очередь для уведомления приложения об изменениях данных, которые произошли в приложении на других платформах. Возможно, я делаю это более сложным, чем это должно быть. Буду признателен за более опытные мнения!
Использование Ormlite в сочетании с контент-провайдером Android
comment
Существует список рассылки Google для пользователей ORMLite Android, который может помочь: groups.google.com/forum/?fromgroups#!forum/ormlite-android
- person Gray   schedule 05.05.2012
comment
Для этой цели на GitHub была отправлена библиотека: github.com/jakenjarvis /Android-OrmLiteContentProvider/blob/
- person Snicolas   schedule 10.05.2013
Ответы (3)
Попробуйте. Полученный опыт обычно стоит затраченных усилий, даже если вы в конечном итоге откажетесь от результата. Да, и дайте нам знать, как идут дела, потому что мне тоже интересно узнать об OrmLite. :-)
person
Sparky
schedule
04.05.2012
До сих пор мой опыт работы с Ormlite был приятным. Есть небольшая кривая обучения и отсутствие документации на сайте. Но сам фреймворк я считаю действительно полезным.
- person dionysus; 05.05.2012
Конфликт, который у меня есть на данный момент с использованием поставщика контента Android, заключается в том, что я уже создал свои объекты и нормализацию базы данных, я только что понял, что мне придется изменить имена столбцов столбцов первичного ключа каждую таблицу и сущность в _id. Это рекомендуется из-за того, что для использования ListView требуется первичный ключ, идентифицируемый этим конкретным именем столбца. Другая проблема, с которой я столкнулся, заключается в том, что я создал свои DAO на основе Ormlite. Однако контент-провайдер ЯВЛЯЕТСЯ DAO.
- person dionysus; 05.05.2012
Таким образом, без необходимости слишком много перекодировать, мне придется сохранить DAO, которые используют Ormlite, и просто иметь еще один уровень, который является просто поставщиком контента, который получает доступ к DAO. Я думаю, что мой контент-провайдер будет просто работать как уровень веб-сервиса в моем приложении. Я буду держать вас, ребята, в курсе моего прогресса.
- person dionysus; 05.05.2012
@dionysus Однако контент-провайдер ЭТО ДАО - бинго! Я тоже так смотрю. Обратите внимание, что даже если вы используете ormlite для доступа к базе данных; есть некоторые случаи использования, когда вы не можете избежать
ContentProvider
. На ум приходят 2 случая: 1) вы хотите предоставить свои данные другим приложениям; 2) Вы хотите использовать поисковую систему Android. Таким образом, даже если вы используете POJO для своих повседневных нужд, вам все равно придется возиться с Cursor
и ContentProvider
, когда дело доходит до этих конкретных требований.
- person curioustechizen; 31.05.2012
В качестве примечания. Всем, кто планирует использовать ORMLite в сочетании с поставщиками содержимого Android, я настоятельно рекомендую, чтобы класс, в котором вы открываете соединение с базой данных, был одноэлементной фабрикой. Причиной этого является предотвращение сбоя из-за попытки потока пользовательского интерфейса получить доступ к рабочему/фоновому потоку. Это особенно актуально при обновлении данных в ListView.
- person dionysus; 18.03.2013
Библиотека https://github.com/blandware/android-atleap является примером использования ContentProvider в совместно с OrmLite
person
Andrey Grebnev
schedule
08.01.2014
Андрей, спасибо за информацию. Я рассмотрю это для некоторых хороших примеров.
- person dionysus; 12.01.2014
Вы можете использовать OrmLiteContentProvider или Ускоритель Android AtLeap в сочетании с OrmLite. Обе библиотеки позволяют легко определить поставщика контента поверх модели данных OrmLite.
person
ChrLipp
schedule
23.09.2014