是否可以在我的iOS应用程序中检查是否已安装iMessage Extension?

时间:2017-08-21 15:01:20

标签: ios swift imessage imessage-extension

我想在我的iOS应用中检查,无论何时我的应用启动,是否已安装此相同应用的iMessage扩展程序。然后每N天我想提醒用户在自定义弹出警报中安装iMessage应用程序。

我知道我可以直接链接到iMessage应用商店,如下所示: https://itunes.apple.com/us/app/classic-mac/id1127542169?app=messages

但是如何检测用户设备上是否已安装iMessage扩展?我只想显示当前未安装的弹出提醒。

我无法找到任何可以查询的iMessage扩展的特定URL方案。

1 个答案:

答案 0 :(得分:1)

您可以使用AppGroups执行此操作!

来自App Extension Programming Guide

  

但是,您可以启用数据共享。例如,您可能想要   允许您的应用扩展程序及其包含的应用分享一个   大量数据,例如预渲染资产。

     

要启用数据共享,请使用Xcode或Developer门户启用   包含应用及其包含的应用扩展程序的应用组。   接下来,在门户中注册应用程序组并指定应用程序组   在包含应用程序中使用。要了解如何使用应用程序组,   请参阅将应用程序添加到应用程序组。

     

启用应用群组,应用扩展程序及其包含的应用   可以使用NSUserDefaults API共享对用户的访问权限   喜好。要启用此共享,请使用initWithSuiteName:方法   实例化一个新的NSUserDefaults对象,传入标识符   共享组。

你可以在共​​享的NSUserDefaults中翻转一个布尔值来跟踪扩展的安装状态。