在启动优化方面除了常规的设置主题图片
防止出现白屏或黑屏,Application 的 onCreate 方法里精简业务逻辑和三方 SDK 异步或者延迟初始化,精简首屏页面的复杂度等之外,现在有了一个新选择,就是字节出品的BootMultiDex框架。
开发板上二十多种分辨率屏幕适配总结
开发板开发相对于手机开发来说对应设备相对较低端,大部分都是横屏且不支持横竖屏切换,支持触屏的同时也要支持遥控器控制,分辨率更是多且杂,开发时除了关注性能外,屏幕适配也是一大难点。
项目组件化工程配置
回顾整个职业生涯,上一次对项目进行可独立运行的组件化工程改造还是七年前,当时对项目进行第三次重构,想要引入当时比较火的组件化的配置,受限于参考资料比较少,再加上业务上堆积了其他很多的事情,后面对这块也就放弃了,时间来到现在,新项目要求每个人单独负责自己的功能模块且互不影响,这就很符合组件化的概念,于是决定在这个项目中把组件化重拾起来。
Android 开发用SVN做版本管理
最近新加入一个团队,出于部署和安全等多方面的考虑,他们代码管理工具用的是 SVN,然后就有了这篇如何用 SVN 做版本管理、优化开发和测试流程。更多详情可参考
Flutter中使用Dio网络请求优化
之前在用 Flutter 开发 Demo,在使用 Dio 请求网络的过程中遇到的一些问题,结合最近在掘金上看到一个不错的文章,于是就把自己的问题拿出来记录一下,看看能不能把之前的优化方案再升级一下
Hive在Flutter Web中使用Stream
受到在做 Android 开发时 MVVM 架构的影响,在开发 Flutter 项目时,在架构实际上我都会有意的向 MVVM 方向上靠。所幸 dart 语言的语法有点像 Java 和 Kotlin 的结合体,所以架构上除了 View 层,其它层都非常的相似。
Hive在Flutter Web上遇到的问题及解决方案
Hive 在我个人项目的使用上出现了问题,目前遇到两种错误:
- 多次 open 同一
Collection
下的 Box,除第一个 Box 能正常使用外,其他的 Box 都不可用。 - 使用
BoxCollection
来创建多个 Box,当使用Box
put 数据时会报数据类型错误,即使我们提供了正确的TypeAdapter
。
经过一段时间的摸索后终于找到一条能正常使用的方法。
Flutter本地存储之Hive
由于floor不支持 Web 平台,所以就需要寻找在Web
平台上的数据库替代方案。然后发现了 Hive,它是一个开源的 Flutter 数据库框架,它支持在全平台上运行且性能很好。虽然不是关系型数据库,只是轻量级的键值对数据库,也能满足一些常用的功能。
Firebase Remote Config的工程化案例
Config 工程化的灵感是来自于澳洲体育视频项目,他们的 Remote Config 工程化做的非常好,它分为两大类 Config 和 Storage,然后用 CircleCI 来自动化处理 Config 的更新和 Storage 的文件上传,是由运维人员来实现的,具体实现细节不是很清楚,所以这里我们来实现一个基于 Python 的 Config 工程化的案例。