由于IOS加入對用戶隱私以及禁止掃描系統(tǒng)信息的控制,目前通過canOpenURL的方法來判斷用戶是否安裝特定app,則會出現(xiàn)-canOpenURL: failed for URL: "ABC://app/*******/" - error: "This app is not allowed to query for scheme ABC"的錯誤,
同時也返回NO,直接通過openUrl也是沒有反應。具體原因可以參考文章:Quick Take on iOS 9 URL Scheme Changes。
修改起來很簡單,只需要在plist中加入ABC的白名單即可,如:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>ABC</string>
</array>
需要注意的時1:最多只能添加50個 ?2、目前只能對已知的url添加,調(diào)用成功。對于由服務器動態(tài)下發(fā)的,暫時沒想好方法來解決,后續(xù)有解決方案再頭部