更方便实现项目MVVM架构的MVVM框架组件
定义了网络请求和UI响应之间的联动
mavenCentral()
dependencies {
implementation 'com.github.ooftf:http-ui-mapping:1.4.1'
}
HttpUiMapping.init(object : HttpUiMapping.Provider {
override fun toast(string: String?) {
//TODO 网络错误toast
}
override fun createLoadingDialog(activity: Activity): HttpUiMapping.MyDialogInterface {
//TODO 创建网络加载dialog
}
override fun onTokenInvalid(baseResponse: IResponse) {
//TODO token 失效
}
}, BuildConfig.DEBUG)
基于http-ui-mapping,提供了BaseMvvmActivity和BaseMvvmFragment基础类
mavenCentral()
dependencies {
implementation 'com.github.ooftf:arch-frame-mvvm:0.1.5'
}
mavenCentral()
dependencies {
implementation 'com.github.ooftf:mapping-button:1.3.8'
}
基于arch-frame-mvvm的AndroidStudio 插件,提供了一键生成Activity ViewModel Layout Fragment 功能
-keepclassmembers class * extends androidx.lifecycle.AndroidViewModel {
<init>(...);
}
-keepclassmembers public class * extends androidx.databinding.ViewDataBinding{
public static inflate(android.view.LayoutInflater);
public static inflate(android.view.LayoutInflater,android.view.ViewGroup,boolean);
}