我想在安装在同一部手机上的两个应用程序之间进行通信。为了做到这一点,我阅读了许多官方文件,了解我必须实施Custom URL Scheme。无法使用canOpenUrl进行InterApp通信
在iOS 9之前,我们似乎必须在Info 中添加一个URLType,并定义URL Scheme:“”。
但是在iOS 9之后,它改变了应用程序之间通信的方式。
url方案示例在Querying URL Schemes with canOpenURL中讨论。
应用的过程中下面的代码:
@IBAction func sender(sender: AnyObject) {
let ourapplication : UIApplication = UIApplication.sharedApplication()
let ourpath : String = "iOSTest://"
//.stringByAppendingString(urlEncodedText)
let oururl : NSURL = NSURL(string: ourpath)!
ourapplication.canOpenURL(oururl)
}
在我的应用B,我在Info.plist中
<key>LSApplicationQueriesSchemes</key>
<array>
<string>iOSTest</string>
</array>
我的iPhone上添加URL名称iOSTest当我安装这两个应用程序来测试,它根本不起作用。
这是我的错误!
这有什么错我的应用程序?
是的,正好。只需交换'LSApplicationQueriesSchemes' –
你在问什么?如何使用App B注册自定义方案,或者您需要在App B中编写哪些代码?无论哪种方式,这是一个完全不同的问题。这些都覆盖在文档和其他许多问题中。这个问题应该被解决后才能关闭。如果您需要额外问题的帮助,请发布针对该问题的其他问题。 – rmaddy
我不明白为什么canOpenURL不起作用? – HungCLo