需要添加的依赖
//Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0'
implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
//RxJava
implementation 'io.reactivex.rxjava2:rxjava:2.1.12'
//Rxlife用于管理RxJava的订阅和解除
implementation 'com.trello.rxlifecycle2:rxlifecycle:2.2.1'
implementation 'com.trello.rxlifecycle2:rxlifecycle-components:2.2.1'
//RxAndroid
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'com.squareup.okhttp3:okhttp:3.11.0'
implementation 'com.squareup.okhttp3:logging-interceptor:3.9.0'
需要添加的权限
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
MVP
MainActivity中的使用
public class MainActivity extends AppCompatActivity implements MainContract.view {
MainPresenter mainPresenter;
PostModule pModule;
GetModule gModule;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mainPresenter = new MainPresenter(this, this);
mainPresenter.getModule(0);
mainPresenter.getPostModule(0);
}
@Override
public void showPostModule(PostModule postModule) {
pModule = postModule;
}
@Override
public void showGetModule(GetModule getModule) {
gModule = getModule;
}
}
MainPresenter中的使用
public class MainPresenter implements MainContract.Presenter {
private MainContract.view view;
private Context context;
public