如何从iMessage扩展程序打开托管应用程序?

时间:2017-02-16 03:10:05

标签: ios objective-c imessage-extension

假设我有一个iMessage应用扩展 MyMessageApp ,它是 MyContainApp 的扩展。

我的期望

当我单击iMessage中的消息时,我想启动MyContainApp并对MyContainApp中的消息执行某些操作。

didSelectMessage

中的代码

self.extensionContext openURL:url completionHandler:^(BOOL success)

问题

结果success始终为NO

iMessage应用扩展程序是否可以打开托管应用程序?

这是我找到的(没有帮助我Apple staff said "should be fixed in seed 3"Apple staff said "This will be fixed in the next release" 2016年8月10日

但是,我无法启动MyContainApp。我是否遗漏了任何关于iMessage应用程序的新政策?

1 个答案:

答案 0 :(得分:2)

我正在创建错误的应用程序!

首先创建 MyContainApp

创建 MyMessageApp 的错误方法是" new-> target-> Application-> iMessageApplication" 。

我应该做的是" new-> target-> Application Extension-> iMessage Extension"

和"打开主机应用"代码是:

NSString *urlScheme = @"zkbrowser://";
NSURL *url = [NSURL URLWithString:urlScheme];

[self.extensionContext openURL:url completionHandler:^(BOOL success) {
    if (success) {
        NSLog(@">>>success");
    }else{
        NSLog(@">>>fail");
    }
}];