2017-02-16 81 views
0

假设我有一个iMessage应用程序扩展MyMessageApp,它是MyContainApp的扩展。如何从iMessage扩展中打开托管应用程序?

我期待什么

当我点击的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" 8月10,2016

不过,我无法启动MyContainApp。我错过了什么,或者有关于iMessage应用程序的新政策吗?

+0

它可以在我们的扩展精细,你通过什么网址? – combinatorial

+0

@combinatorial我使用URLScheme“zkbrowser://”来启动我的app.and我在Safari中工作 – Zachary

+0

如果你直接从容器应用程序中的某些代码调用openURL到相同的URL,它是否工作 – combinatorial

回答

2

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

首先创建MyContainApp

和错误的方式来创建MyMessageApp是 “新建 - >靶>应用 - > iMessageApplication”。

我应该做的是“新建 - >靶>应用扩展 - >扩展的iMessage”

和“开放式主机应用程序”的代码是:

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

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

男人,你救了我的命。 – pipizanzibar

相关问题