2013-03-11 35 views
15

Tôi gặp sự cố khi chuyển giá trị từ Hoạt động đến dịch vụ đã chạy. Tôi đã tự hỏi cách tiếp cận tốt nhất để thực hiện sẽ là gì? Thêm tính năng bổ sung sẽ không hoạt động vì tôi tin rằng điều này phải được thực hiện trước khi ý định được bắt đầu? (đúng nếu tôi sai).Android: Chuyển các biến đến một dịch vụ đang chạy

Mọi trợ giúp sẽ tuyệt vời! Tôi có thể xây dựng nếu cần.

Dan.

Trả lời

27

Nếu dịch vụ của bạn không phải là IntentService, bạn có thể gọi startService(...) bao nhiêu lần bạn muốn. Dịch vụ sẽ chạy lần đầu nhưng các cuộc gọi tiếp theo sẽ dẫn đến các cuộc gọi mới onStartCommand() với các tính năng bổ sung mới mà bạn cần.

Kiểm tra this answerdoc.

+1

Đồng ý, dưới đây là bằng chứng từ ['Activity # startService()'] (https://developer.android.com/reference/android/content/Context.html#startService%28android.content.Intent%29) ' s tài liệu. – Sam

+0

Ah tôi hiểu rồi. Không biết làm thế nào tôi bỏ lỡ điều này đọc tài liệu. Cảm ơn câu trả lời nhanh chóng của bạn! – L337BEAN

+1

Cũng xem [câu trả lời] (http://stackoverflow.com/a/15899750/1340631) giải thích cách gọi 'startService()' để truyền các Intent mới và đọc chúng bên trong dịch vụ của bạn trong 'onStartCommand()'. Về cơ bản câu trả lời tương tự như ở đây nhưng một chút chi tiết hơn. – scai

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