如何从 iMessage 打开我们的应用程序

How to open our app from iMessage

我已经在 iMessage 中创建了一个运行正常的应用程序,但我想知道如何从 iMessage 打开我们的应用程序

假设我有一个应用程序,然后我添加了 iMessage 目标,我想从 iMessage 打开我的应用程序,这可能吗?

我试过这个但没有成功

 NSString *customURL = @"appName://";

 if ([[UIApplication sharedApplication] 
canOpenURL:[NSURL URLWithString:customURL]])
 {
     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:customURL]];
  }

错误:

我假设你有一个主应用程序已经在运行(除了 iMessage 扩展)。

转到主应用程序的 Info.plist 创建一个新的 URL 类型结构,如下所示

URL 类型 -> URL 方案 -> Your_App_Name_No_Spaces

在此之后,您可以转到您的应用扩展程序

NSString *customURL = @"appName://";

 if ([[UIApplication sharedApplication] 
canOpenURL:[NSURL URLWithString:customURL]])
 {
     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:customURL]];
  }

终于问题解决了。我再次进入我的应用程序的构建设置并偶然发现了

第一次我设置为是。默认情况下是否。当我将其设置为 NO 时,错误消失了。我也对这个结果感到震惊

在您的 MSMessagesAppViewController 子类中,有一个 属性 NSExtensionContext 类型的 extensionContext。该对象可以为您打开 URL。