上传功能在safari中工作,但在移动wkWebView ios应用程序中不工作
我的网站附带了一个文件上传系统,它在移动safari上运行得非常完美。我可以访问iCloud、照片库和照相机 然而,当我在我们的移动应用程序中的wkWebView中实现它之后,上传系统就不再工作了 当我加载wkWebView并单击按钮时,它会显示我要从何处获取文件的选项。我选择照片库,它会关闭webview并将我带回我的第一个viewController 以下是webview代码:上传功能在safari中工作,但在移动wkWebView ios应用程序中不工作,ios,swift,mobile,Ios,Swift,Mobile,我的网站附带了一个文件上传系统,它在移动safari上运行得非常完美。我可以访问iCloud、照片库和照相机 然而,当我在我们的移动应用程序中的wkWebView中实现它之后,上传系统就不再工作了 当我加载wkWebView并单击按钮时,它会显示我要从何处获取文件的选项。我选择照片库,它会关闭webview并将我带回我的第一个viewController 以下是webview代码: //Camera AVCaptureDevice.requestAccess(forMedi
//Camera
AVCaptureDevice.requestAccess(forMediaType: AVMediaTypeVideo) { response in
if response {
//access granted
} else {
}
}
//Photos
let photos = PHPhotoLibrary.authorizationStatus()
if photos == .notDetermined {
PHPhotoLibrary.requestAuthorization({status in
if status == .authorized{
//...
} else {}
})
}
let requestObj = URLRequest(url: URL(string: "https://example.com/chat.php?use=\(userId)")!)
corepage.load(requestObj);
}
我还将这些信息添加到info.plist中。但是,这并没有解决我在单击上载文件的任何选项时页面返回主viewController的问题
谢谢大家 我已经弄明白了: 在包含我的webview的viewcontroller中,我添加了:
override func dismiss(animated flag: Bool, completion: (() -> Void)?) {
if (self.presentedViewController != nil) {
super.dismiss(animated: flag, completion: completion)
}
}
这就避免了dimissal问题。也许您基本上是在某个地方意外关闭了WebView/controller?如果你“取消”上传会发生什么,它会返回吗?@Fattie当我单击“取消”时,它会做完全相同的事情…这非常奇怪,因为在mobile safari上它不会这样做…当我取消它时,它会停留在那里,什么也不做。这并不能真正解决问题。那只是把一个创可贴放在上面。您应该了解是什么导致ViewController被解除。如果在添加的代码中设置断点,那么是什么触发了解雇?