/// 打开微信
extension String{
/// 打开url
func openAsUrl(backAlert:@escaping ()->Void){
let url = NSURL(string:self)
if let resultUrl = url,UIApplication.shared.canOpenURL(resultUrl as URL){
UIApplication.shared.open(resultUrl as URL, options: [:], completionHandler: nil)
}else {
backAlert()
}
}
}
/// 打开微信
func openWeixin(){
"weixin://".openAsUrl{
self.showAlert(message:"未检测到微信APP")
}
}
复制代码
其中须要注意的是iOS 9 系统策略发生了更新,限制了http协议的访问,此外应用须要在“Info.plist”中将要使用的URL Schemes列为白名单,才可正常检查其余应用是否安装。下附上经常使用APP的url。swift
<key>LSApplicationQueriesSchemes</key>
<array>
<string>douyutv</string>
<string>mqqapi</string>
<string>mqq</string>
<string>mqqOpensdkSSoLogin</string>
<string>mqqconnect</string>
<string>mqqopensdkdataline</string>
<string>mqqopensdkgrouptribeshare</string>
<string>mqqopensdkfriend</string>
<string>mqqopensdkapi</string>
<string>mqqopensdkapiV2</string>
<string>mqqopensdkapiV3</string>
<string>mqzoneopensdk</string>
<string>wtloginmqq</string>
<string>wtloginmqq2</string>
<string>mqqwpa</string>
<string>mqzone</string>
<string>mqzonev2</string>
<string>mqzoneshare</string>
<string>wtloginqzone</string>
<string>mqzonewx</string>
<string>mqzoneopensdkapiV2</string>
<string>mqzoneopensdkapi19</string>
<string>mqzoneopensdkapi</string>
<string>mqqbrowser</string>
<string>mttbrowser</string>
<string>sinaweibohd</string>
<string>sinaweibo</string>
<string>sinaweibosso</string>
<string>weibosdk</string>
<string>weibosdk2.5</string>
<string>weixin</string> //微信
<string>wechat</string>
</array>
复制代码