Does UIApplication:openURL
work?
NSString *iTunesLink = @"http://www.youtube.com/watch?v=TFFkK2SmPg4";
BOOL did = [[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesLink]];
这没有任何作用。
我假设你想测试自定义 URL 方案 https://developer.apple.com/library/archive/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Inter-AppCommunication/Inter-AppCommunication.html。你会想要使用canOpenURL
先看看这个网址是否可以打开。canOpenURL
返回一个BOOL
指示 URL 方案是否可以由设备上安装的某些应用程序处理的值。如果canOpenURL
回报YES
然后你将继续使用以下命令打开 URLopenURL
.
默认情况下,YouTube 链接会在 iOS 设备上打开 YouTube 应用。此行为尚未在新 Apple TV 上进行测试,因为 YouTube 的应用程序在 tvOS Beta 中无法访问。
这是如何使用的示例canOpenURL
查看 Facebook 是否使用其自定义 URL 方案安装在 iOS 设备上:
Obj-C:
// Check if FB app installed on device
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fb://"]]) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"fb://profile/355356557838717"]];
}
else {
// FB not installed
// Do something else
}
Swift:
// Check if FB app installed on device
if UIApplication.sharedApplication().canOpenURL(NSURL(string:"fb://")!) {
UIApplication.sharedApplication().openURL(NSURL(string:"fb://profile/355356557838717")!)
}
else {
// FB not installed
// Do something else
}
我预计 Facebook 等应用程序将以与 iOS 对应程序相同的方式实现自定义 URL 方案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)