Я хочу получить доступ к данным из SQLiteDatabse в SERVICE. Я создал объект db и попытался получить доступ к базе данных из службы, но не работал. Чтобы получить доступ к содержимому базы данных в методе onStart
, что мне делать. Я много искал, но создание контекста методом getApplicationContext()
не помогло мне. Пожалуйста, помогите мне с кодом для доступа к базе данных в SERVICE.Доступ к базе данных из фоновой службы
ответ
Android Service
не имеет такого метода onStart()
. Вы можете использовать либо onStartCommand()
, либо onCreate()
.
Извините, это была ошибка. Но можете ли вы сказать, как получить значения/обновить значения базы данных из службы. – TechHelper
Пожалуйста, разместите код, который у вас есть. – Kristopher
SQLiteDatabase db = (новое хранилище (getBaseContext()). GetReadableDatabase(); \t db = (новое хранилище (getBaseContext()). GetWritableDatabase(); – TechHelper
У вас есть варианты, что вы можете сделать.
Фрист Вариант следующий:
Вы ВСЕГДА использовать статический контекст (например, в mainactivity), над которым вы ВСЕГДА Acces БД. Вы можете сделать это так:
public static Activity thi;
Secound Опция следующее:
В вашей службы вы можете позвонить:
this.getApplicationContext();
С помощью этого контекста вы также можете написать в ваш дБ.
С наилучшими пожеланиями
сафари
Я пробовал вот так: db = (новое хранилище (this.getApplicationContext()). getReadableDatabase(); И то же самое для getWritableDatabase(), но после запуска запроса выбора, используя rawquery() не извлекает данные. – TechHelper
И не могли бы вы рассказать мне больше о статическом контексте, который вы написали выше. Удивительно. Должен ли я использовать этот статический контекст в SERVICE? – TechHelper
вы можете использовать его, но вам не обязательно нравится это делать. сначала вы его создаете. thi.getApplicationContext(); и он должен работать нормально. ;) – safari
- 1. Доступ к базе данных LINQ to Sql из фоновой службы в Windows Phone
- 2. Возможно ли получить доступ к базе данных из службы?
- 3. Доступ к базе данных MySQL из iphone
- 4. Доступ к базе данных
- 5. Приобретение экземпляра фоновой службы
- 6. доступ к базе данных из приложения
- 7. Доступ к базе данных из модели Rails
- 8. Доступ к внешней базе данных из Rails
- 9. Доступ к базе данных из ACL плагин
- 10. получить доступ к базе данных из JavaScript
- 11. Доступ к базе данных из облачного приложения
- 12. Доступ к базе данных напрямую из jsp
- 13. Доступ к базе данных из Android-приложения
- 14. Доступ к базе данных из класса Listfragment
- 15. Доступ к базе данных из теста PHPUnit
- 16. Доступ к базе данных derby из jar
- 17. Доступ к базе данных MySQL из python
- 18. доступ к базе данных из python cgi
- 19. Доступ к базе данных SQL из ASP
- 20. Доступ к базе данных из трансляции?
- 21. Доступ к базе данных Derby из html
- 22. Доступ к хранилищу данных GAE из фоновой темы
- 23. Доступ к базе данных SQL Server без службы SQL Server
- 24. Запуск приложения из фоновой службы
- 25. Открытие приложения из фоновой службы
- 26. Остановка фоновой службы из уведомления
- 27. OpenERP доступ к базе данных
- 28. Async доступ к базе данных
- 29. Доступ к базе данных Joomla
- 30. Доступ к базе данных в веб-службе
функции, такие как db.isOpen() и т.д. работают отлично. Но когда я запускаю запрос select с помощью db.rawQuery(), он не работает. Plz поможет мне получить значения в сервисе. – TechHelper
Спасибо, друзья. Мне удалось решить эту проблему. Большое спасибо за помощь. – TechHelper
Теперь у меня другая проблема. Я попытался запустить запрос обновления с использованием rawQuery(), а также значений db.update() и контента, но, тем не менее, он не работает. Есть ли другой способ обновить таблицу в SERVICE? Спасибо – TechHelper