Как сделать обновление базы данных без запроса пользователя? - PullRequest
0 голосов
/ 28 июня 2011

Я пытаюсь разработать приложение, которое будет загружать некоторые строки json (приветствия) с сервера. Поскольку я новичок в Android, я не знаю точно, как это сделать. Приложение будет иметь свою собственную папку входящих сообщений, которая будет реализовано с помощью sqlite, и система автоматически загрузит все последние приветствия (строки json) с сервера и поместит их в папку «Входящие». Так что для этого лучше всего использовать службы или асинхронные задачи ??? Я хочу что всякий раз, когда на сервер приходит новое приветствие, мое приложение должно загружать его автоматически без какого-либо запроса пользователя, а когда пользователь открывает папку входящих сообщений, оно обновляется.

Ответы [ 2 ]

0 голосов
/ 28 июня 2011

если вы хотите обновить базу данных, даже если приложение не запущено, вам понадобится служба или учетная запись синхронизации

для служб http://marakana.com/forums/android/examples/60.html

для адаптера синхронизации http://developer.android.com/resources/samples/SampleSyncAdapter/index.html

Я реализовал нечто подобное, используя сервис

0 голосов
/ 28 июня 2011

Услуги больше соответствуют сценарию использования, который вы описали здесь. Сервисы предназначены для использования в сценариях, когда вы не уверены, когда будут поступать данные, и вы хотите продолжать проверять их в фоновом режиме, не давая пользователю знать, что что-то происходит в Asynctask, с другой стороны, более полезно, когда вам нужно сделать что-то зависящее от сети или что-то, что займет некоторое время после того, как пользователь что-то нажмет. Asynctask - это просто еще один способ показать пользователю надлежащий индикатор выполнения или что-то в то время, пока приложение обрабатывает запрос пользователя так, чтобы пользователь не чувствует, что приложение застряло. Так что УСЛУГИ это для вашего случая.

...