如何在主应用程序和小部件之间共享数据?

问题描述

我正在尝试在主要和小部件之间共享数据,我创建了 UserDefault 保存数据,然后为两者创建了一个应用程序组,并尝试从 UserDefault 读取数据但获得 nil。

我关注此信息 (https://betterprogramming.pub/sharing-object-data-between-an-ios-app-and-its-widget-a0a1af499c31) 和许多其他信息,但找不到问题。

在上述指南之前,我使用下一个代码进行保存:

UserDefaults(suiteName: "group.url.scheme.firebase.widgets")!.set(try? PropertyListEncoder().encode(vpaid),forKey:"Widget")
        UserDefaults.standard.synchronize()

用于阅读小部件内部:

.onAppear {
            
            let sharedUsername = UserDefaults(suiteName: "group.url.scheme.firebase.widgets")!.string(forKey: "Widget")
            print("Shared username: \(String(describing: sharedUsername))")
 }

我做错了什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)