wkwebview按要求音频崩溃&麦克风弹出iOS 15.4
我在iPhone上的WKWebView遇到了一个未知的错误。当尝试更改视图中的导航链接时,“目标链接请求摄像头”和“麦克风权限”。尝试查看WKWebView和设备之间的警报时。
不能用assopy = no在非序列线上调用。
+[uiview setAnimationsEnabled:]从背景线程调用。不支持从Uiview或子类上进行背景线程的任何操作,并可能导致意外和阴险的行为。跟踪=(....)
- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(nonnull WKNavigationAction *)navigationAction decisionHandler:(nonnull void (^)(WKNavigationActionPolicy))decisionHandler {
dispatch_async(dispatch_get_main_queue(), ^{
if (navigationAction.navigationType == WKNavigationTypeLinkActivated) {
if (navigationAction.request.URL) {
if (![navigationAction.request.URL.resourceSpecifier containsString:@"ex path"]) {
if ([[UIApplication sharedApplication] canOpenURL:navigationAction.request.URL]) {
//------>
UIApplication *application = [UIApplication sharedApplication];
[application openURL:navigationAction.request.URL options:@{} completionHandler:nil];
decisionHandler(WKNavigationActionPolicyCancel);
}else{
}
} else {
decisionHandler(WKNavigationActionPolicyAllow);
}
}
}
else if (navigationAction.request.URL && [[NSString stringWithFormat:@"%@",navigationAction.request.URL] rangeOfString:@"disconnectChat"].location != NSNotFound ){
decisionHandler(WKNavigationActionPolicyAllow);
[UIView animateWithDuration:0.5 animations:^{
self->_thankYouView.hidden = NO ;
} completion:^(BOOL finished) {
}];
}
else {
//------>
decisionHandler(WKNavigationActionPolicyAllow);
}
});
}
I get an unknown error with WKWebView on my Iphone.When try to Change the navigation link inside the view the destination link request camera and microphone permission. when try to view the alert between WKWebView and the device its crashed .
Cannot be called with asCopy = NO on non-main thread.
+[UIView setAnimationsEnabled:] being called from a background thread. Performing any operation from a background thread on UIView or a subclass is not supported and may result in unexpected and insidious behavior. trace=(....)
- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(nonnull WKNavigationAction *)navigationAction decisionHandler:(nonnull void (^)(WKNavigationActionPolicy))decisionHandler {
dispatch_async(dispatch_get_main_queue(), ^{
if (navigationAction.navigationType == WKNavigationTypeLinkActivated) {
if (navigationAction.request.URL) {
if (![navigationAction.request.URL.resourceSpecifier containsString:@"ex path"]) {
if ([[UIApplication sharedApplication] canOpenURL:navigationAction.request.URL]) {
//------>
UIApplication *application = [UIApplication sharedApplication];
[application openURL:navigationAction.request.URL options:@{} completionHandler:nil];
decisionHandler(WKNavigationActionPolicyCancel);
}else{
}
} else {
decisionHandler(WKNavigationActionPolicyAllow);
}
}
}
else if (navigationAction.request.URL && [[NSString stringWithFormat:@"%@",navigationAction.request.URL] rangeOfString:@"disconnectChat"].location != NSNotFound ){
decisionHandler(WKNavigationActionPolicyAllow);
[UIView animateWithDuration:0.5 animations:^{
self->_thankYouView.hidden = NO ;
} completion:^(BOOL finished) {
}];
}
else {
//------>
decisionHandler(WKNavigationActionPolicyAllow);
}
});
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

尝试使用此
Try use this