我想制作一個可以打開許多 URL 方案的應用程式。
為了做到這一點,我嘗試了一些方法:
我用過
UIApplication.shared.open(url, options: [:], completionHandler: nil)。
但是這樣我必須在info.plist.
并且info.plist我最多可以添加 50 個 URL 方案。
(我想添加 50 多個 URL 方案)我嘗試使用
WKWebView.
但是 TheWKWebView不處理非 http URL 模式。
webview只打開http、https。
我想打開 50 多個 URL 方案,我該怎么辦?
uj5u.com熱心網友回復:
你可以使用SafariServices框架。如果您從某個視圖控制器呼叫它,代碼將如下所示:
if let url = URL(string: "<your_url>") {
let safariVC = SFSafariViewController(url: url)
present(safariVC, animated: true, completion: nil)
}
uj5u.com熱心網友回復:
我閱讀了這篇關于您提到的 50 個方案限制的文章。
https://book.hacktricks.xyz/mobile-pentesting/ios-pentesting/ios-custom-uri-handlers-deeplinks-custom-schemes
它說只有在使用 canOpenURL 時才需要添加方案(為了檢查設備上是否安裝了應用程式而呼叫的系統方法)。所以,也許你可以使用另一個檢查而不是 canOpenURL,這樣你就不需要將方案添加到 info.plist
您始終可以檢查傳遞給 UIApplication.shared.open(...) 的完成處理程式的 Bool 值,以判斷其他應用程式是否已打開。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/534969.html
標籤:ios迅速网址方案
