SQLite
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> SQLite

Cập nhật dữ liệu Hoạt động từ dịch vụ khi dịch vụ bị tạm dừng

Cách khó nhưng đúng để làm điều này là tạo ContentProvider tùy chỉnh của riêng bạn cho ứng dụng của bạn và cập nhật tất cả dữ liệu nhận được từ các dịch vụ web và thông báo đẩy tới ContentProvider này . Khi Activity trở lại nền trước, nó tự cập nhật dữ liệu mới được cung cấp bởi ContentProvider .

Thật là khó vì tạo ContentProvider tùy chỉnh là rất nhiều công việc. Đó là chính xác bởi vì nó phù hợp với hành vi của các ứng dụng di động và với kiến ​​trúc Android:giả sử một người dùng kích hoạt một dịch vụ web hoặc một số tác vụ đòi hỏi nhiều tính toán, rồi loại bỏ ứng dụng; hoặc nói rằng một thông báo đẩy đến và yêu cầu dữ liệu của ứng dụng được cập nhật và hiển thị. Trong cả hai trường hợp, Activity của ứng dụng s có thể không còn ở nền trước nữa mà là một Service có thể được sử dụng để thực hiện một số hoạt động không phải giao diện người dùng. Bây giờ khi kết thúc thao tác đó, Service thực hiện các thay đổi đối với dữ liệu thông qua ContentProvider và khi người dùng kích hoạt lại ứng dụng, Activity lấy dữ liệu mới của họ từ ContentProvider .

Để trích dẫn hướng dẫn chính thức:

Nhà cung cấp nội dung là giao diện tiêu chuẩn kết nối dữ liệu trong một quy trình với mã chạy trong một quy trình khác.

Là một nhà phát triển, bạn nên luôn cho rằng người dùng có thể gọi một ứng dụng bất kỳ lúc nào và loại bỏ ứng dụng đó bất kỳ lúc nào. Không phân biệt Activity ở phía trước hay không, dữ liệu của ứng dụng cần được cập nhật và duy trì một cách chính xác.

Các ứng dụng của riêng Google sử dụng ContentProvider tùy chỉnh S. Gmail ứng dụng cụ thể sử dụng ContentProvider của nó để nhận email mới khi có kết nối mạng và hiển thị email ngoại tuyến. Facebook , WhatsApp &Twitter Các ứng dụng Android cũng sử dụng 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. java.lang.OutOfMemoryError:[cạn kiệt bộ nhớ] khi đọc dữ liệu từ Sqlite Android

  2. Tự động mở kết quả truy vấn SQLite trong trình soạn thảo văn bản

  3. Chèn dữ liệu để ghi vào sqlite

  4. SQLite Listview onclick bộ lọc db để mở dẫn đến hoạt động mới

  5. Cập nhật tất cả các hàng trong một cột thành giá trị mới