我一直在觀看Virgil Dobjanschi的Google I/O演示文稿,以正確的方式在服務和內容提供者上實現Android上的REST。 http://code.google.com/events/io/2010/sessions/developing-RESTful-android-apps.html什麼是Android上的綁定器回調?
基於視頻我做錯了事情,考慮到正確的方式有多困難,這並不令人驚訝。無論如何,已經在視頻中顯示了應許的土地,我在確定如何到達那裏時遇到了一些問題。
我大部分都被釘住了,但唯一能夠擊敗我的是Virgil在幻燈片中引用的Binder Callback(請參閱上面的鏈接),在第43頁上,它顯示第2步作爲啓動startService服務(intent)步驟10作爲使用活頁夾回叫返回狀態信息。演示文稿中沒有任何示例代碼,這是相當令人沮喪的。有談論開放採購Twitter客戶端顯然使用這種方法,但什麼都沒有,並宣佈在四月。
在視頻中,他指出:「什麼是綁定器回調?綁定器回調,將其視爲在請求意圖中傳遞的接口。」
我已經遍佈整個地方搜索,但一直沒有找到任何文檔或示例,顯示如何傳遞迴調作爲意圖的一部分。我也不能找出任何其他方式傳遞迴調。
我以爲他可能指的是綁定到服務和實現回調的方式。但是,他具體指的是本地服務,並使用strarSerice()而不是bindService()。另外,如果活動被破壞,則服務將被銷燬,從而破壞了這個想法。解決方法是使用startService(),然後bindService()並使該服務在該持續時間內運行。 bindService()的另一個問題是,直到onServiceConnected()完成後纔會使用回調,這會使代碼更加複雜,因爲操作指令無法在意圖中傳遞,因爲回調回調可能無法及時返回結果。
我只對使用推薦方法實現這一點感興趣。任何人都可以瞭解一下Binder回調是什麼以及如何對其進行編碼。與此相關的是,有沒有人知道服務助手除了暴力單身之外什麼樣子?
任何幫助在這裏將不勝感激。 謝謝 Clive
太好了,謝謝你,我對ResultReceiver並不熟悉,但它似乎符合Virgil正在討論的內容,我已經實現了它並且工作正常。 只是好奇,爲什麼你從ResultReceiver切換到createPendingResult()? – 2010-08-31 21:23:44
@Clive Jackson:用「ResultReceiver」掙扎了一會兒,並暫時擱置一邊。有一天我可能會回來。 – CommonsWare 2010-08-31 21:30:45