2014-06-17 65 views
0

我的問題是有點理論,希望我能得到一個清晰的解釋。 我一直在尋找爲Android一個不錯的REST API的消費者(或如何開發一個堅實的一些明確的信息),我發現從谷歌IO 2010Android REST API與RetroFit

「開發Android REST的REST API設計談話客戶端應用程序 - Google「

自從這次談話以來,已經有4次了,我認爲可能會退出針對此事的新設計和技術,或者不是? ,我認爲,將工作最適合我的情況是這樣: enter image description here

所以我的第一個問題是,這是否架構仍然適用於新的應用(從起點開始)? 我發現Retrofit,這對於其他服務來說似乎是一個相當不錯和穩定的Api,但我不太明白它是如何工作的,就像是從活動(或碎片)調用我的api端點的好方法,圖書館處理簡歷/暫停(在活動暫停時提供結果),或者我必須自己實施。

對不起,很長的文章,並感謝耐心!

+0

沒有人知道,或可以指導我另一種方法?謝謝 ! – Leonardo

回答

0

你必須實現如何處理這個問題來回答你的問題。 是的,該架構是有效的,但RetroFit只構成「休息方法」塊的一部分。你將如何實現它?這取決於你想要的。您可以在服務中使用Retrofit(AKA REST方法),這樣可以,但是您也可以跳過使用服務並在活動或片段中使用它。但是,如果您執行第二個選項(活動/片段),則無法考慮在翻新(onStart,onPause等)中處理活動生命週期,因爲這些是網絡調用,您必須在工作線程(AsyncTasks for實例)。

因此總而言之,無論您選擇什麼選項(作爲服務或工作線程),您都必須考慮使用可能的觀察者來控制活動/片段,並且記住請求網絡數據始終在ui線程之外完成。如何處理這種情況的實施可能由您根據您的需求和應用程序的複雜性來完成。