问题现象
使用一个widget文件同时管理多个尺寸卡片界面,依赖onAddForm读取cardDimension来进行区分。
在应用升级与更新操作并发时,会偶现因为数据未同步导致页面尺寸显示异常问题。
解决方案
- 由于不同类型尺寸的卡片UI布局通常是有差异的,针对不同类型尺寸的卡片可以进行拆分,一个尺寸一个特定UI界面的widget文件来管理,解除对cardDimension强依赖,这样在应用升级与更新操作并发时,不会出现因为数据未同步导致页面尺寸显示异常的问题。
- 在widget的pages目录下新建多个页面,然后在配置文件form_config.json配置一下相关卡片信息即可,参考链接:配置卡片的配置文件。
- 按照如上方案进行修改后,当桌面存在修改前和修改后的两个卡片,会出现白屏现象,出现这种现象的原因是为了排除老版本服务卡片历史数据对新版本服务卡片产生影响,目前有版本号升级对老版本服务卡片自动清理的机制,建议升级版本号覆盖安装解决。