链接到Swift中的iTunes Music

时间:2017-03-26 14:48:13

标签: ios swift swift3

当用户点击按钮时,我喜欢将应用转发到iTunes或Apple Music(就像为Instagram或FV做的那样),在代码下方找到nil错误。有没有办法做到这一点?或者甚至可以在我的应用中更好地播放预览。

 var url  = NSURL(string: "itms://itunes.apple.com/us/album/ne-olacak-dj-funky-c-vs-ogün-dalka-single/id1202943921")

    if UIApplication.shared.canOpenURL(url! as URL) {
        UIApplication.shared.openURL(url! as URL)
    }

1 个答案:

答案 0 :(得分:1)

  

此方法要求URLString仅包含正确形成的URL中允许的字符。所有其他字符必须正确转义百分比。任何百分比转义字符都使用UTF-8编码进行解释。

并且您需要在将其传递给NSURL之前对其进行编码,您可以通过stringByAddingPercentEncodingWithAllowedCharacters

执行此操作
 let url  = URL(string: "itms://itunes.apple.com/us/album/ne-olacak-dj-funky-c-vs-ogün-dalka-single/id1202943921".addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!)
     if UIApplication.shared.canOpenURL(url! as URL) {
        UIApplication.shared.open(url!, options: [:], completionHandler: nil)
    }

对于该错误,您需要遵循此

这是Apple在iOS 9中构建的任何应用上实施的新强制安全措施。

到目前为止,唯一的解决方案是在info.plist文件中添加一个带有Key LSApplicationQueriesSchemes的条目,并添加" itms"以及您的应用将在此阵列中链接到的任何其他网址方案。

LSApplicationQueriesSchemes