2010-06-17 34 views
5

Tôi muốn tạo ứng dụng có chứa Dịch vụ S và Hoạt động A. Dịch vụ S chịu trách nhiệm tiền xử lý, chẳng hạn như chuẩn bị dữ liệu được hiển thị trên giao diện người dùng của Hoạt động A, trước Hoạt động Một được gọi.Android - Tương tác dịch vụ và hoạt động

Tôi muốn để có thể gọi dịch vụ S từ bên ngoài gói, nói từ một ứng dụng Android của lớp Hoạt động B, thực hiện tiền xử lý, và sau đó khi dữ liệu đã sẵn sàng, gọi Hoạt động A.

Câu hỏi của tôi là:

  1. Cách tốt nhất để chia sẻ dữ liệu giữa Service S và hoạt động A là gì?
  2. Hoạt động bên ngoài B có thể liên lạc với Service S như thế nào để xác định xem nó đã hoàn thành với tất cả tiền xử lý của nó chưa và Hoạt động A đã sẵn sàng để được gọi chưa?

Cảm ơn Chris

+0

Tôi có thể sử dụng bộ thu phát sóng để Dịch vụ cho biết hoạt động bên ngoài được thực hiện khi thực hiện quá trình tiền xử lý không? – Chris

Trả lời

7

cách tốt nhất để chia sẻ dữ liệu giữa Sở S và Hoạt động A là gì?

Sử dụng mẫu liên kết cục bộ và có Hoạt động A liên kết với Dịch vụ S, sau đó gọi API tiếp xúc của dịch vụ để truy xuất mọi thứ cần thiết.

Làm thế nào các hoạt động bên ngoài B giao tiếp với các dịch vụ S để có thể xác định xem nó đã hoàn thành với tất cả tiền xử lý của nó, và các Hoạt động Một sẵn sàng để được gọi?

Sử dụng mẫu gắn kết từ xa và AIDL. Hoạt động B sẽ đăng ký cuộc gọi lại được xác định AIDL với Service S, dịch vụ sẽ gọi khi thích hợp. Xem herehere để biết ví dụ.

+0

Cuối cùng nó có ý nghĩa! Cảm ơn bạn! – Chris

Các vấn đề liên quan