-canOpenURL: failed for URL


  
  這在 Xcode 6.4 + iOS 8 時,是不會有的情況,原因是【為了強制增強數據訪問安全, iOS9 默認會把所有從 NSURLConnection 、  CFURL 、  NSURLSession發出的 HTTP 請求,都改為 HTTPS 請求:iOS9.x-SDK編譯時,默認會讓所有從 NSURLConnection 、  CFURL 、  NSURLSession發出的 HTTP 請求統一采用 TLS 1.2(SSL 3.1) 協議。】
 
1、如果你的輸出信息是-canOpenURL: failed for URL: "kindle://home" - error: "This app is not allowed to query for scheme kindle"
  去你的 target 里面的 Build Settings 下的 Enable Bitcode,把它設置成 NO,這不一定會阻擋你的控制台繼續輸出這條信息,但是可以保證你的 App 正常運行。
2、如果你的輸出信息是 xxxx - error: "This app is not allowed to query for scheme xxxx"
  去 Info.plist 里面建立一個叫 LSApplicationQueriesSchemes 的 Array,把你在xxxx部分看到的詞匯一個一個填進去,直至控制台沒有任何相關輸出即可。
 
提示:

本來加入之前提示:
-canOpenURL: failed for URL: "mqqopensdkapiV2://qzapp" - error: "This app is not allowed to query for scheme mqqopensdkapiV2"

加入之后,error原因就沒有了。如下:

-canOpenURL: failed for URL: "mqqopensdkapiV2://qzapp" - error: "(null)"

原因:要使用iOS9的真機!不要用模擬器測試,不然一直報-canOpenURL: failed for URL: "XXXXXXXXXX" - error: "(null)"。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM