我想在我的iOS应用中检查,无论何时我的应用启动,是否已安装此相同应用的iMessage扩展程序。然后每N天我想提醒用户在自定义弹出警报中安装iMessage应用程序。
我知道我可以直接链接到iMessage应用商店,如下所示: https://itunes.apple.com/us/app/classic-mac/id1127542169?app=messages
但是如何检测用户设备上是否已安装iMessage扩展?我只想显示当前未安装的弹出提醒。
我无法找到任何可以查询的iMessage扩展的特定URL方案。
答案 0 :(得分:1)
您可以使用AppGroups执行此操作!
来自App Extension Programming Guide
但是,您可以启用数据共享。例如,您可能想要 允许您的应用扩展程序及其包含的应用分享一个 大量数据,例如预渲染资产。
要启用数据共享,请使用Xcode或Developer门户启用 包含应用及其包含的应用扩展程序的应用组。 接下来,在门户中注册应用程序组并指定应用程序组 在包含应用程序中使用。要了解如何使用应用程序组, 请参阅将应用程序添加到应用程序组。
启用应用群组,应用扩展程序及其包含的应用 可以使用NSUserDefaults API共享对用户的访问权限 喜好。要启用此共享,请使用initWithSuiteName:方法 实例化一个新的NSUserDefaults对象,传入标识符 共享组。
你可以在共享的NSUserDefaults中翻转一个布尔值来跟踪扩展的安装状态。