我正在尝试为 IOS 构建一个简单的应用程序,它向我展示了一个用作 QRCode 扫描器的网页。当我在手机上使用 safari 访问网页“qrcodescan.in”时,它可以毫无问题地访问我的 iPhone 相机。
因此,作为一个应用程序,我无法访问我的手机摄像头,但可以通过 Safari 在网站上访问它。
以下是我在 Xcode 中的代码。
import UIKit
import WebKit
class ViewController: UIViewController,WKUIDelegate {
var webView: WKWebView!
override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string:"https://qrcodescan.in")
let myRequest = URLRequest(url: myURL!)
webView.load(myRequest)
}
}
此外,我还添加了所有 Keys 到“info.plist”中,用于访问手机上的相机功能。
<key>NSCameraUsageDescription</key>
<string>${PRODUCT_NAME} Camera Usage</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>${PRODUCT_NAME} library Usage</string>
所以我在网上搜索了很多,想找到任何有用的东西,但都没有成功。 我希望有人能帮助我。
还要提一下。总的来说,就 Swift 或 IOS 应用程序开发而言,我绝对是新手。
提前致谢。
最佳答案
WKWebView 和原生 Safari 中的 WebView 不提供相同的 API(参见 here)。这是您的代码不起作用的主要原因。
参见 this SO answer关于如何在 WKWebView 上访问相机。
关于jquery - Xcode WebView 相机访问不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58727431/