【问题标题】:How to open our app from iMessage如何从 iMessage 打开我们的应用程序
【发布时间】:2017-01-30 12:18:13
【问题描述】:
我在 iMessage 中创建了一个可以正常运行的应用,但我想知道如何从 iMessage 打开我们的应用
假设我有一个应用程序,然后我添加了 iMessage 目标,并且我想从 iMessage 信息中打开我的应用程序,这可能吗?
我试过了,但没有成功
NSString *customURL = @"appName://";
if ([[UIApplication sharedApplication]
canOpenURL:[NSURL URLWithString:customURL]])
{
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:customURL]];
}
错误:
【问题讨论】:
标签:
ios
objective-c
ios10
url-scheme
imessage
【解决方案1】:
在您的 MSMessagesAppViewController 子类中,有一个属性 extensionContext,类型为 NSExtensionContext。该对象可以为您打开 URL。
【解决方案2】:
终于问题解决了。我再次访问了我的应用程序的构建设置并偶然发现了
我第一次设置为“是”。虽然默认是 NO。当我将其设置为 NO 时,错误消失了。我也对这个结果感到震惊
【解决方案3】:
我假设您已经有一个主应用程序正在运行(除了 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]];
}