CanOpenUrl 方法无效 ios 9
CanOpenUrl method not working ios 9
我在我的应用程序中使用了 CanOpenUrl 方法,它在 iOS 8.4 上运行,但是当我将模拟器更改为 9.2 时,它无法运行。我找不到原因。这些是我的代码;
if([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"deeplinking://"]]){
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"deeplinking://"]];
}
else{
NSLog(@"not working!");
}
有人可以帮助我吗?谢谢你,哈利尔。
请实施应用程序传输协议
添加
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
在 plist 中
在您的 .plist
中添加以下内容
App Transport Security Settings Dictionary
Allow Arbitrary Loads Boolean YES
出于安全考虑,Apple 在iOS 9 and above
中引入了新概念NSAppTransportSecurity
,这是需要的
您只需在 info.plist
文件的 NSAppTransportSecurity
词典中将 NSAllowsArbitraryLoads
键添加到 YES
。
例如,
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
您可以在 apple 中查看此文档。例如
以上答案是正确的,但不建议允许所有任意加载,因为它允许进行所有非安全连接。相反,您可以只允许某些特定的网址在没有 ssl 证书的情况下工作,这是推荐的方式。
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>yourserver.com</key>
<dict>
<!--Include to allow subdomains-->
<key>NSIncludesSubdomains</key>
<true/>
<!--Include to allow HTTP requests-->
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
<!--Include to specify minimum TLS version-->
<key>NSTemporaryExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
</dict>
</dict>
</dict>
我在我的应用程序中使用了 CanOpenUrl 方法,它在 iOS 8.4 上运行,但是当我将模拟器更改为 9.2 时,它无法运行。我找不到原因。这些是我的代码;
if([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"deeplinking://"]]){
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"deeplinking://"]];
}
else{
NSLog(@"not working!");
}
有人可以帮助我吗?谢谢你,哈利尔。
请实施应用程序传输协议
添加
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
在 plist 中
在您的 .plist
App Transport Security Settings Dictionary
Allow Arbitrary Loads Boolean YES
出于安全考虑,Apple 在iOS 9 and above
中引入了新概念NSAppTransportSecurity
,这是需要的
您只需在 info.plist
文件的 NSAppTransportSecurity
词典中将 NSAllowsArbitraryLoads
键添加到 YES
。
例如,
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
您可以在 apple 中查看此文档。例如
以上答案是正确的,但不建议允许所有任意加载,因为它允许进行所有非安全连接。相反,您可以只允许某些特定的网址在没有 ssl 证书的情况下工作,这是推荐的方式。
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>yourserver.com</key>
<dict>
<!--Include to allow subdomains-->
<key>NSIncludesSubdomains</key>
<true/>
<!--Include to allow HTTP requests-->
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
<!--Include to specify minimum TLS version-->
<key>NSTemporaryExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
</dict>
</dict>
</dict>