Tôi có một dịch vụ Android khởi động và duy trì một chuỗi nền.Thực thi mã trên chuỗi chính trong Android mà không cần truy cập vào Hoạt động?
Thỉnh thoảng, chuỗi nền cần thực hiện gọi lại trên chuỗi chính. Tôi đang bối rối như thế nào để làm điều này.
Tôi không thể gọi điều này.runOnUiThread vì "this" là phiên bản của Dịch vụ chứ không phải Activity và Service không có phương thức runOnUiThread.
Tôi cũng không thể tạo hoặc thực thi AsyncTask, vì tài liệu cho AsyncTask nói rằng cả hàm tạo và phương thức thực hiện phải được gọi từ chuỗi giao diện người dùng.
Tôi có cần duy trì tham chiếu đến hoạt động đang sử dụng dịch vụ và gọi phương thức runOnUiThread của nó hay có cách nào khác để chạy một thứ gì đó trên chuỗi giao diện người dùng không?
Cảm ơn.
"chủ đề nền cần thực hiện gọi lại trên chuỗi chính" - tại sao? – CommonsWare
Người dùng dịch vụ là hoạt động. Nó cần gọi lại trên chuỗi chính để nó có thể cập nhật các phần tử giao diện người dùng. Tôi cho rằng tôi có thể gọi nó trở lại trên chủ đề nền và làm cho nó có trách nhiệm lên lịch một cuộc gọi lại trong chuỗi giao diện người dùng, nhưng nó sẽ thuận tiện hơn cho người tiêu dùng của dịch vụ nếu tôi có thể làm điều đó. –
@Cruceo: Ồ, trời không. – CommonsWare