View Code? Open in Web Editor
NEW
🔥🔥🔥BaseDemo 是Android MVVM + Retrofit + OkHttp + Coroutine 协程 + Room + 组件化架构的Android应用开发规范化架构,通过不断的升级迭代,目前主要分为两个版本,分别为分支 MVVM+Databinding 组件化版本,分支MVVM+Databinding+Single 单体版本。旨在帮助您快速构建属于自己的APP项目架构,做到快速响应上手,另外再长期的实践经验中汇总了大量的使用工具类,主要放在了项目 `lib_common` 组件中,以供大家参考使用。具体使用请开发者工具自己项目需求决定选择如何使用。
License: Apache License 2.0
Kotlin 43.23%
Java 56.77%
basedemo's People
Contributors
basedemo's Issues
java.lang.IllegalStateException: Binding instance cleared.
错误,目前我是这么处理的,但是感觉存在内存泄露风险
注释位置打开就会报以下错:
这个框架内容很丰富,周末简单体验了一下,挺不错的,学到了一些东西,但也存在一些bug说一说(因为我这边clone下来的已经魔改太多了,就不pr了)
- lib_base#view#BaseActivity#initCommonView
if (enableAllowFullScreen()) {
window.setFlags(
WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN
)
requestWindowFeature(Window.FEATURE_NO_TITLE);
}
这段允许全屏的代码放在setContentView(R.layout.activity_root)
之后会报错,需要放前面
两个基类都缺失了上一行代码中的视图绑定,缺失该行将导致toolbar右侧图标和监听无法加载
fragment在进行切换和销毁时存在内存泄漏,目前比较严重的一个是在fragment中使用toolbar,本质是绑定activity的actionBar,fragment销毁并不会自动解绑,还是需要手动解绑。我重写了BaseFragment#onDestroyView:
override fun onDestroyView() {
super.onDestroyView()
mActivity.setSupportActionBar(null)
}
这能避免小黄鸟弹窗,但日志上还是会存在可能泄漏的提示,这我就不清楚为什么了