2017-06-29 86 views
0

對不起,這是我第一個iOS應用!我正在嘗試使用QRCodeReader.swift實現一個非常簡單的QR碼掃描器,但我不知道如何處理結果中的URL。它應該立即重定向到鏈接,但不起作用。謝謝!掃描QR碼並打開URL - Swift AVFoundation庫

func reader(_ reader: QRCodeReaderViewController, didScanResult result: QRCodeReaderResult) { 
reader.stopScanning() 


dismiss(animated: true) { [weak self] in 


let url = URL(string: result.value)! 
if #available(iOS 10.0, *) { 
    UIApplication.shared.open(url, options: [:], completionHandler: nil) 
} else { 
    UIApplication.shared.openURL(url) 
} 


} 
} 
+0

難道當你打開系統設置,你會發現這個問題? –

+0

還沒有!它掃描QR碼,但沒有去鏈接。 – Thecoder

+0

那麼這個鏈接是什麼?因爲我使用你的代碼,它的工作原理。 –

回答

1

夫特3.0

Optional Chaining: 可選鏈接作爲替代強制解纏。

您可以檢查掃描StringurlxmlJSON通過optional chaining。欲瞭解更多去蘋果文檔here

if let url = URL(string: result.value){ //check whether the string is URL 
    if #available(iOS 10.0, *) { 
     UIApplication.shared.open(url, options: [:], completionHandler: nil) 
    } else { 
     UIApplication.shared.openURL(url) 
    } 
}else { 
    //do more if scanned text is not url string 
} 
+0

是否可以檢查字符串是否爲URL?謝謝! – Thecoder

+0

@Thecoder,是的。嘗試以上代碼:) –