SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Zaktualizuj dane aktywności z usługi po jej wstrzymaniu

Trudnym, ale poprawnym sposobem, aby to zrobić, jest zbudowanie własnego niestandardowego ContentProvider dla Twojej aplikacji i zaktualizuj wszystkie dane otrzymane z usług internetowych i powiadomień push do tego ContentProvider . Kiedy Activity wraca na pierwszy plan, aktualizuje się nowymi danymi dostarczonymi przez ContentProvider .

To trudne ponieważ tworzenie niestandardowego ContentProvider to dużo pracy. To jest poprawne sposób, ponieważ jest zgodny z zachowaniem aplikacji mobilnych i architekturą Androida:powiedzmy, że użytkownik aktywuje usługę sieciową lub jakieś zadanie wymagające dużej mocy obliczeniowej, a następnie odrzuca aplikację; lub powiedzmy, że nadchodzi powiadomienie push i wymaga aktualizacji i wyświetlenia danych aplikacji. W obu przypadkach Activity aplikacji s może nie być już na pierwszym planie, ale Service może służyć do wykonywania niektórych operacji niezwiązanych z interfejsem użytkownika. Teraz, pod koniec tej operacji, Service wprowadza zmiany w danych za pomocą ContentProvider , a gdy użytkownik ponownie aktywuje aplikację, Activity s pobierają nowe dane z ContentProvider .

Cytując oficjalny samouczek:

Dostawcy treści to standardowy interfejs, który łączy dane w jednym procesie z kodem działającym w innym procesie.

Jako programista zawsze powinieneś zakładać, że użytkownik może wywołać aplikację w dowolnym momencie i odrzucić ją w dowolnym momencie. Niezależnie od tego, czy Activity jest na pierwszym planie, czy nie, dane aplikacji muszą być prawidłowo aktualizowane i konserwowane.

Własne aplikacje Google korzystają z niestandardowego ContentProvider s. Gmail w szczególności aplikacja korzysta ze swojego ContentProvider aby otrzymywać nowe wiadomości e-mail, gdy połączenie sieciowe jest dostępne, i wyświetlać wiadomości w trybie offline. Facebook , WhatsApp &Twitter Aplikacje na Androida również korzystają z ContentProvider s.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Biblioteka Android Room nie może skopiować bazy danych z zasobu

  2. Jak wyświetlić nazwę tabeli z sqlite DB -- Android

  3. Android :błąd Sqlite - (1) bliski zera:błąd składni

  4. SQLite wybierz wiersze, jeśli znacznik czasu pasuje do dzisiejszej daty

  5. Lekka instalacja WordPressa :Jak zainstalować WordPress z SQLite