原地址:https://github.com/JessYanCoding/MVPArms
中文文檔:https://github.com/JessYanCoding/MVPArms/wiki
首先附上github地址
首先說,這個框架對我這種剛?cè)胄械拿刃聛碚f真的是幫大忙了
一.如何使用
方式一:一鍵生成框架這種方式
第一步:一鍵生成module
https://github.com/JessYanCoding/MVPArms-Module-Template
第二步:喜聞樂見的 MVPArms全家桶(總共兩步就可以獲得一個完整的項目模板了)
https://github.com/JessYanCoding/MVPArmsTemplate
MVPArms模板整理:
頁面級模板:https://github.com/JessYanCoding/MVPArmsTemplate
Module 級模:https://github.com/JessYanCoding/MVPArms-Module-Template
組件化模板:https://github.com/JessYanCoding/ArmsComponent-Template
方式二:使用Gradle 遠程依賴,
本框架建議直接使用 Gradle 遠程依賴, 框架已經(jīng)提供了很多用于擴展的接口, 足以滿足日常需求, 如非必須, 請不要使用依賴 Module 的方式以及修改框架源碼,閱讀中文文檔
中文文檔:https://github.com/JessYanCoding/MVPArms/wiki
1 開發(fā)準備
2 快速開始
關(guān)于MVPArms和AndroidX:
關(guān)于MVPArms兼容AndroidX的問題 原作者文章(親測 插件方式創(chuàng)建的項目不可用)
https://mp.weixin.qq.com/s/XeJQrwbxKk6JbBn8C3fqKg
我的做法:
1.使用插件一鍵生成項目時谴垫,不使用androidx
1.1
AndroidStudio3.6
現(xiàn)在android studio 3.6可以不強制使用androidX了,在創(chuàng)建項目時勾選以下選項就可以直接使用MVPArms了蚪缀,但是此時的項目非androidx依然有很多最新庫使用不了
1.2
AndroidStudio3.5會強制使用androidx询枚,但是MVPArms美中不足的就是目前還不支持androidx浙巫,所以在新建Project金蜀,再新建Module后的畴,會導致編譯不通過,此時只需要修改項目下邊:
gradle.properties
文件(此步驟需要刪除原來的androidX module后進行):將
android.useAndroidX=true
android.enableJetifier=true
改為false
android.useAndroidX=false
android.enableJetifier=false
二.使用MVPArms框架注意點:
2.1 使用MVPArms全家桶時注意,選擇的包名渣慕,并且不是所有activity都需要來一個全家桶抱慌。
2.2 多個Fragment或Activity使用同一個P層和M層時,除了繼承相同的View外强经,還需要在inject中加入這個活動的對象
2.3 API放在一起就好 官方有解決多個baseurl的方案寺渗,但最簡單有效的方案還是直接給完整的url接口
2.4 建好項目后有一個多余的原始module信殊,如何去掉炬称?
刪除方法:
File --> Project Structure... -->Modules
選擇需要刪除的module 右鍵remove(不刪除原文件)
然后去項目文件夾內(nèi)整個刪除磁盤文件
2.5 要使用Butterkinfe
請使用initview()
方法返回布局文件
2.6 配置項目的運行環(huán)境
默認只有debug和relese兩個環(huán)境,那我想增加一個dev環(huán)境怎么操作蝌焚?
第一步:使用dev.initWith(debug)
然后單獨配置dev環(huán)境的屬性毕谴,主要是BASEURL 如下圖
第二步:配置leakcanary
我這里增加了兩個環(huán)境dev和qak8s 所以需要:
如圖在module的
build.gradle
--> dependencies
增加兩行