Szhangbiao's blog

记录一些让自己可以回忆的东西

0%

受到在做 Android 开发时 MVVM 架构的影响,在开发 Flutter 项目时,在架构实际上我都会有意的向 MVVM 方向上靠。所幸 dart 语言的语法有点像 Java 和 Kotlin 的结合体,所以架构上除了 View 层,其它层都非常的相似。

Read more »

Hive 在我个人项目的使用上出现了问题,目前遇到两种错误:

  • 多次 open 同一Collection下的 Box,除第一个 Box 能正常使用外,其他的 Box 都不可用。
  • 使用BoxCollection来创建多个 Box,当使用Box put 数据时会报数据类型错误,即使我们提供了正确的TypeAdapter

经过一段时间的摸索后终于找到一条能正常使用的方法。

Read more »

由于floor不支持 Web 平台,所以就需要寻找在Web平台上的数据库替代方案。然后发现了 Hive,它是一个开源的 Flutter 数据库框架,它支持在全平台上运行且性能很好。虽然不是关系型数据库,只是轻量级的键值对数据库,也能满足一些常用的功能。

Read more »

Config 工程化的灵感是来自于澳洲体育视频项目,他们的 Remote Config 工程化做的非常好,它分为两大类 Config 和 Storage,然后用 CircleCI 来自动化处理 Config 的更新和 Storage 的文件上传,是由运维人员来实现的,具体实现细节不是很清楚,所以这里我们来实现一个基于 Python 的 Config 工程化的案例。

Read more »

jacoco 是一款面向 java 的代码覆盖率分析工具,通过 ASM 字节码插桩技术,计算被测试代码覆盖的代码块,最后生成代码覆盖率报告。插桩方式分为在线(on the fly)和离线(offline)两种模式。其中在线模式在使用中更方便。

Read more »

Flutter 的 shared_preferences 库的作用是将数据以键值对的形式异步持久化到磁盘支持的数据类型有 int、double、bool、string、stringList,对于非 Web 平台删除 App 后数据会被清除,对于 Web 平台清除浏览器缓存后数据会被清除。

Read more »