文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.200224
中文引用格式: 李想,特日根. 基于Android端MVP模式和響應式網(wǎng)絡框架的設計與實現(xiàn)[J].電子技術應用,2021,47(2):49-53,57.
英文引用格式: Li Xiang,Te Rigen. Design and implementation of Android-based MVP mode and responsive network request framework[J]. Application of Electronic Technique,2021,47(2):49-53,57.
0 引言
在當今社會,移動端因其便攜性、低功耗以及無線網(wǎng)的快速接入等優(yōu)勢,使得人們與外部世界進行網(wǎng)絡連接更加方便而舒適。正因如此,移動端編程成為了當下最熱門的計算機編程領域之一。2019年第二季度移動端操作系統(tǒng)市場份額表明,Android系統(tǒng)占比77.14%,iOS系統(tǒng)占比22.83%,其余系統(tǒng)不及1%,由此可知 Android在當今手機行業(yè)起著舉足輕重的作用。隨著每一款應用承載的功能不斷增多,其代碼管理也變得更為復雜。對于Android應用開發(fā)來說,用Android Studio編譯器生成Android項目時,其生成的XML文件和Activity文件已經(jīng)對應傳統(tǒng)MVC(Model-View-Controller)架構模式的View層和Controller層,同時XML文件不能實現(xiàn)全部布局功能,因此部分View層內(nèi)容需交付給Activity文件完成。Activity文件隨著頁面和業(yè)務邏輯的不斷增加也會不斷增大,代碼間耦合度明顯提高[1-3],將對項目的升級和維護帶來障礙。因此,對于大中型項目來說,MVC架構并不可取。
對于一個常規(guī)項目,其網(wǎng)絡請求必不可少,雖然官方提供了諸如HttpURLConnection類等HTTP請求方式,但該類在大量網(wǎng)絡請求時,其性能較差。
針對此問題,MVP(Model-View-Presenter)+Retrofit+OkHttp+RxJava的架構應運而生,該架構能有效降低代碼耦合度,使Activity文件的內(nèi)容更加單一,網(wǎng)絡請求和布局更新更加高效。對于整個項目而言,整體結構更加清晰,代碼可維護性也得到大幅度提升。
本文通過對MVP+Retrofit+OkHttp+RxJava的研究分析,以《長光衛(wèi)星云極視》項目的登錄模塊為應用案例,設計并驗證Android應用開發(fā)中MVP模式和Retrofit2+OkHttp3+RxJava2的響應式網(wǎng)絡請求框架結合的方法及可行性。
本文詳細內(nèi)容請下載:http://ihrv.cn/resource/share/2000003384
作者信息:
李 想1,2,特日根1,2,3
(1.長光衛(wèi)星技術有限公司,吉林 長春130000;2.吉林省衛(wèi)星遙感應用技術重點實驗室,吉林 長春130000;
3.中國科學院長春光學精密機械與物理研究所,吉林 長春130000)