如何将旧的小部件迁移到新的小部件

Posted

技术标签:

【中文标题】如何将旧的小部件迁移到新的小部件【英文标题】:How to migrate old widgets into a new one 【发布时间】:2017-04-16 03:45:28 【问题描述】:

我正在开发的应用程序现在有三个小部件。这些小部件中的每一个都有不同的大小和一个修复布局文件。 现在我开发了一个可调整大小和自适应的新小部件。它根据其大小加载合适的布局文件。

现在,随着我的应用程序的下一次更新,我希望实现以下目标:

    仅在小部件抽屉中列出新的自适应小部件,因此无法创建旧小部件 已存在的小部件应使用新小部件的逻辑来更新其视图

现在我认为这两个目标是相互矛盾的。当我从清单中删除或禁用小部件接收器时,小部件会从小部件抽屉中消失,但同时主屏幕上的现有小部件会中断。

当我让现有的小部件提供者使用新的逻辑时,旧的小部件的行为就像新的一样,但在小部件抽屉上,我有四倍于相同的小部件。

有没有办法实现我的目标?如果没有,是否可以为新用户隐藏旧的小部件,同时为正在更新其应用程序的外部用户隐藏旧的小部件?

非常感谢您的回答!

【问题讨论】:

【参考方案1】:

没有办法解决这个问题。当您移动小部件提供程序的包名称时,小部件将被删除。

我决定使用我的旧小部件的一个供应商,该供应商已迁移到新的小部件。其他三个被删除了。

【讨论】:

以上是关于如何将旧的小部件迁移到新的小部件的主要内容,如果未能解决你的问题,请参考以下文章

如何在不创建新的小部件树分支的情况下重用相同的布局屏幕

如何创建自定义颤振 sdk 小部件,重建颤振和使用新的小部件

如何禁用 WordPress 的小部件块编辑器?

如何在 Flutter 的小部件树中将新的 MaterialPageRoute 作为子项打开

如何使用 mousepressEvent 打开一个新的小部件

在此小部件上方找不到正确的提供程序