草庐IT

wkwebview-bridge

全部标签

ios - iOS 上的所有浏览器都使用 WKWebview 还是 UIWebVIew?

我很好奇iOS上的第三方浏览器(Chrome或FireFox)他们是否都使用WkWebview或UIWebVIew来显示网页,但做了很多额外的工作,如缓存等?所以,如果我想在iOS上写一个浏览器,我必须使用WkWebview来显示网页并包装它来做更多的事情? 最佳答案 是的,Apple在§2.5.6ofAppStoreReviewGuidelines中明确禁止其他网络引擎(或分别只允许WebKit):2.5.6AppsthatbrowsethewebmustusetheappropriateWebKitframeworkandWeb

ios - WKWebView https 证书无效

这是我用来允许证书的代码:@interfaceNSURLRequest(DummyInterface)+(BOOL)allowsAnyHTTPSCertificateForHost:(NSString*)host;+(void)setAllowsAnyHTTPSCertificate:(BOOL)allowforHost:(NSString*)host;@end@implementationNSURLRequest(DummyInterface)+(BOOL)allowsAnyHTTPSCertificateForHost:(NSString*)host{return[hostisEq

ios - '重新加载'与 WKWebView 中的 'reloadFromOrigin'

reload和reloadFromOrigin在WKWebView中有什么区别??Apple的文档说reloadFromOrigin:Reloadsthecurrentpage,performingend-to-endrevalidationusingcache-validatingconditionalsifpossible.但我不确定这到底是什么意思。 最佳答案 我也对这个很感兴趣。查看WebKit的源代码(Source/WebCore/loader/FrameLoader.cpp,FrameLoader::addExtraFi

javascript - 当我从另一个方法调用方法时,React-native Bridge 为 Nil

但我注意到,每当我从另一个方法调用它时,我的桥变量为nil。我相信这是因为仅在从javascript调用桥接方法时才设置桥接。我已经尝试了从创建委托(delegate)到创建SingleTon类的所有方法。以上都不起作用,我无法弄清楚为什么它只能在我从Javascript调用的方法中使用。这是我的课Helper.h#import"RCTBridge.h"#import"AppDelegate.h"#import"RCTEventEmitter.h"@interfaceHelper:RCTEventEmitter-(void)auth;@end这是我的.m文件:Helper.m#impo

ios - WKWebView的evaluateJavascript方法的completionHandler运行在什么线程上?

我试图弄清楚在WKWebView的-evaluateJavaScript:completionHandler:的完成处理程序中操作UI对象是否安全。文档似乎没有具体说明。 最佳答案 https://developer.apple.com/reference/webkit/wkwebview/1415017-evaluatejavascript?language=objcThecompletionhandleralwaysrunsonthemainthread.几乎在页面的最后。可能在您发布此问题后的某个时间添加。

ios - 无法在 iOS 9 beta/9.3 上更改 WKWebView 的滚动率

在iOS8上,下面的代码工作正常,它可以更惯性地滚动。webView.scrollView.decelerationRate=UIScrollViewDecelerationRateNormal;对于iOS9beta3,这段代码没有任何意义,即使没有报错。这是一个错误还是有其他解决方法?注意:UIWebView的滚动速率在两个版本上都可以更改两种类型。 最佳答案 更新:这已被修复但未在iOS9.3中部署(请参阅下面的解决方法)。此处有更多详细信息:https://bugs.webkit.org/show_bug.cgi?id=148

iOS WKWebView播放音视频没有声音

在初始化 WKWebViewConfiguration的时候添加下面的代码!我这边是解决了!WKWebViewConfiguration*config=[[WKWebViewConfigurationalloc]init];  if(@available(iOS10.0,*)){    config.mediaTypesRequiringUserActionForPlayback=WKAudiovisualMediaTypeNone;  }else{    //Fallbackonearlierversions  }  config.allowsInlineMediaPlayback=YES;

探秘WKWebView

该文章属于刘小壮原创,转载请注明:刘小壮概述之前主要使用UIWebView进行页面的加载,但是UIWebView存在很多问题,在2020年已经被苹果正式抛弃。所以本篇文章主要讲解WKWebView,WKWebView从iOS8开始支持,现在大多数App应该都不支持iOS7了。UIWebView存在两个问题,一个是内存消耗比较大,另一个是性能很差。WKWebView相对于UIWebView来说,性能要比UIWebView性能要好太多,刷新率能达到60FPS。内存占用也比UIWebView要小。WKWebView是一个多进程组件,Network、UIRender都在独立的进程中完成。由于WKWeb

iOS. table嵌套WKWebView 自动布局 刷新闪烁问题

先说下我这遇到的情况,tableView刷新时候闪动、或者定位出错1.1、tablwView预设高度自动布局self.tableView.estimatedRowHeight=200;self.tableView.rowHeight=UITableViewAutomaticDimension;self.tableView.estimatedSectionHeaderHeight=0self.tableView.estimatedSectionFooterHeight=01.2定义cell的高度@property(nonatomic,assign)CGFloatwebHeigh;1.3webVi

ios - 如何捕获 WKWebView 忽略的点击

我有一个包含WKWebView的View。我的html内容是由我的应用程序生成的,所以我确信它永远不会比屏幕宽,所以我在它的superView上使用UIGestureRecognizer来响应左右滑动。效果很好。我还希望看到任何不在链接上的点击,这样我就可以决定我想对这些点击做什么。WKWebView似乎吸收了所有水龙头。我试着向它询问它的手势识别器数组,以便我可以与他们建立一些合作关系,但无论我什么时候询问(即在创建WKWebView之后,在用我的HTML加载它之后)我都得到nil文件,并在通知它已完成加载时)。如果WKWebView没有使用UIGestureRecognizer机制