MVPFrame
MVPFrame for Android 是一个集合了 Retrofit2 + RXJava2 + OkHttp3 + Mosby3 二次封装的MVP架构基类库,为敏捷开发而生。
Gif 展示
引入
Maven:
<dependency>
<groupId>com.king.frame</groupId>
<artifactId>mvpframe</artifactId>
<version>1.0.6</version>
<type>pom</type>
</dependency>
Gradle:
compile 'com.king.frame:mvpframe:1.0.6'
Lvy:
<dependency org='com.king.frame' name='mvpframe' rev='1.0.6'>
<artifact name='$AID' ext='pom'></artifact>
</dependency>
如果Gradle出现compile失败的情况,可以在Project的build.gradle里面添加如下:(也可以使用上面的GitPack来complie)
allprojects {
repositories {
maven { url 'https://dl.bintray.com/jenly/maven' }
}
}
引入的库:
// Model-View-Intent
compile 'com.hannesdorfmann.mosby3:mvi:3.0.4'
// Plain MVP
compile 'com.hannesdorfmann.mosby3:mvp:3.0.4'
// MVP + ViewState support
compile 'com.hannesdorfmann.mosby3:viewstate:3.0.4'
compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.squareup.retrofit2:converter-gson:2.3.0'
compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
compile 'com.squareup.okhttp3:okhttp:3.9.1'
compile 'com.squareup.okhttp3:logging-interceptor:3.9.1'
compile 'io.reactivex.rxjava2:rxjava:2.1.1'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
compile 'com.orhanobut:logger:1.15'
示例
核心代码(在你项目的Application中的onCreate方法里面初始化)
//初始化:第一个参数是基本的Url地址,第二个参数是超时时间(单位为秒,可不填,默认为20s)
ApiManager.init(String baseUrl,int timeout);
代码示例 (示例出自于app中的Api.java)
public class Api {
private Api(){
throw new AssertionError();
}
private static ApiService getApiService(){
if(apiService == null){
apiService = ApiManager.getInstance().getApiService(ApiService.class);
}
return apiService;
}
public static void getApiAddr(String ip, SimpleCallback<IPAddress> callback){
ApiObserver.subscribe(getApiService().getIPAddr(ip),callback);
}
}
更多使用详情,请查看app中的源码使用示例
关于我
Name: Jenly
Email: jenly1314#gmail.com / jenly1314#vip.qq.com
CSDN: jenly121
Github: jenly1314
微信公众号:
加入QQ群: 20867961