确定是否启用了窗口小部件

时间:2016-08-03 14:19:21

标签: ios swift today-extension ios8-today-widget

有没有办法确定我的今日小工具是否已由用户添加到通知中心?我需要知道,所以我可以相应更改主机应用程序中的一些标签。

1 个答案:

答案 0 :(得分:3)

没有用于此的API,但是您可以让今天的小部件向共享容器写入一些内容,您可以从应用程序中读取该内容以确定它是否已显示。主要的问题是,在窗口小部件至少显示一次之前不会发生这种情况,并且您无法确定它们是否已安装然后将其删除。

func widgetHasRun() {
    if let sharedContainer = NSUserDefaults(suiteName: "group.com.my.app") {
        sharedContainer.setBool(true, forKey: "today widget installed")
        sharedContainer.synchronize()
    }
}

我们使用此技术来确定是否应该提示新用户安装我们的小部件。