của Google market_billing sample, giống như những người khác như this one, kết nối với các dịch vụ từ xa IMarketBillingService
thông qua một dịch vụ wrapper địa phương, BillingService
.Tại sao một dịch vụ khác trên IMarketBillingService?
Tôi hiểu rằng các dịch vụ có lợi thế khi thực hiện công việc ở chế độ nền, nhưng không đủ điều kiện từ xa IMarketBillingService
?
Lợi thế của việc thêm một lớp khác cho hành tây này là gì?
Tôi sẽ mất gì nếu cố gắng kết nối với điều khiển từ xa IMarketBillingService
trực tiếp từ hoạt động chính của tôi, trong chuỗi giao diện người dùng?
Nếu không nên kết nối trực tiếp với từ xa IMarketBillingService
trực tiếp trong chuỗi giao diện người dùng, có thể thay thế BillingService
cục bộ bằng chỉ một chuỗi khác trong hoạt động chính không?
Cảm ơn +1 đã có câu trả lời tuyệt vời. Sự cần thiết cho một dịch vụ được giải thích rõ ràng và được minh họa tại đây * nhưng ... * không phải là một dịch vụ ('IMarketBillingService') có đủ không? Tại sao hai? Tại sao cả local * và * remote? –
Nếu bạn nhìn vào IMarketBillingService, nó được khai báo là giao diện công cộng IMarketBillingService mở rộng android.os.IInterface. Đây không phải là một dịch vụ, chỉ là một nhánh mà bạn sử dụng để giao tiếp với Dịch vụ từ xa, thực sự đang chạy trong Ứng dụng Android Market nếu tôi không nhầm lẫn. "Dịch vụ" một phần của tên của Classe là khó hiểu. –