2011-08-01 38 views
0

我有一個遠程服務,我會提供給其他程序員作爲apk。此遠程服務提供了一個API來控制服務。我已經在另一個軟件包中編寫了一個測試應用程序來測試我的遠程服務。它不起作用,因爲AIDL必須導出到我的測試應用程序。當然,我可以將我的Remote Service放在構建路徑上,但這不是我想要的。 我希望其他程序員只需在智能手機上安裝apk,即可在應用程序中使用我的API。我沒有看到另一個解決方案,但是將我的Remote Service作爲jar而不是apk發佈。遠程服務爲apk

我曾經用Intent讀過一段代碼,如果Intent無法啓動,它會自動打開下載頁面。但是,如果我使用遠程服務,AIDL必須始終導入到想要使用我的遠程服務的應用程序,或者我錯了嗎?

感謝,尼

回答

0

如果協會是相當寬鬆的,你可以使用意圖作爲通信機制,而不是服務綁定模型。

如果保留本模塊,您可以提供必要的AIDL代碼作爲源代碼或其他程序員合併的jar。如果你這樣做了,在你的界面中添加一些版本,並且考慮如何處理不兼容的版本。這與大多數可重用組件機制的工作方式相差不大 - 必須提供用於可重用外部模塊的存根以支持編譯客戶端程序。

+0

好的,謝謝你的回覆。我的遠程服務界面提供了5種方法。其中一人將PendingIntent作爲參數。這可能是一個愚蠢的問題,但我如何使用Intents來調用我的API方法? – Benjamin

+0

我可以將AIDL作爲jar提供給其他人當然可以。我只是想讓其他人使用我的遠程服務儘可能簡單。當然,作爲apk發佈我的遠程服務比jar更容易。 – Benjamin