WKWebView 在未呈现时不加载资源

2023-12-02

我正在尝试将我的应用程序从 UIWebView 转移到 WKWebView。 当应用程序启动时,我的应用程序正在将 HTML 文件下载到文件系统。 下载完成后,将创建一个 webview 对象(不会显示在屏幕上)并从设备加载 HTML(“file://”)。 HTML 包含 JavaScript,可根据特定参数从 URL 加载资源。 这是问题:

  1. 在 UIWebview 中,所有资源都加载没有问题。
  2. 在 WKWebView 中有一个奇怪的行为:

如果对象 (WKWebView) 未显示在屏幕上 - 资源未加载,并且 JavaScript 的总体流程非常慢。 如果对象 (WKWebView) 显示在屏幕上 - 所有资源均已加载,则一般流程与 UIWebView 表现良好。

我的问题是 - 为什么 WKWebView 在屏幕上呈现时表现不同?这与从文件系统加载 HTML 的事实有关吗?据我记得,如果实例存在,WKWebView 应该正常加载所有内容,而不依赖于它是否存在。

这就是我加载文件的方式:

//convert to file system url
NSURL *fileSystemLocation = [[NSURL alloc] initFileURLWithPath:[getting the path] isDirectory:YES]; 


//load the html file
[self.wkwebview loadFileRequest:requestToHtml allowingReadAccessToURL:fileSystemLocation];

Html 的 script 标签内包含一个长脚本。它的主线正在做类似的事情:

var js = someVar.getElementsByTagName(someName);
js = someVar.createElement(someVar);
js.src = geSomeUrl(); //behave differnatly when webview is not presented 

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WKWebView 在未呈现时不加载资源 的相关文章

  • 自动调整大小在 xib 中不起作用

    我做了简单的设计 xib 我的应用程序的部署目标是iOS 5当我在模拟器或设备中运行我的应用程序时 我的视图不会调整大小 这是我的快照 xib file When i try to run my app in simulator it ru
  • 尝试将存档提交到 App Store 时出现各种 ITMS 错误

    所以这是一个奇怪的问题 当我尝试将我的存档提交到 App Store 时 出现以下错误 ERROR ITMS 90049 This bundle is invalid The bundle identifier contains disal
  • 创建 UITextView 全部内容的位图

    我正在尝试获取 UITextView 内容的位图 我可以通过以下方式获取当前屏幕上 UITextView 内容的位图 UIGraphicsBeginImageContext myTextView bounds size myTextView
  • 自动从 iTunes Connect 下载销售报告

    我有一个漂亮而 hacky 的 Perl 脚本来自动从 iTunes Connect 抓取和下载销售报告文件 截至今天 苹果对销售报告网站进行了全面改革 它看起来好多了 但它使用了大量 JavaScript 简单的抓取不再有效 那么 有人知
  • 内联 YouTube 视频在 iOS 上的 cordova 应用程序中不起作用

    我用 cordova 开发了一个移动应用程序 我确实需要能够播放内联 YouTube 视频 我尝试了一段时间来解决它 我设置了属性playsinline to 1在 YouTube iframe API 中 I put
  • 检查 coredata 对象是否为零

    我想找出核心数据中的对象 我的代码 Types signedDate Date alarmDate Date starTime 国家标准日期 endTime NSDate NSString str signedDate gt AND sig
  • 如何在 viewDidLayoutSubviews 中获得正确的视图高度?

    void viewDidLayoutSubviews super viewDidLayoutSubviews NSLog viewDidLayoutSubviews view height f self view frame size he
  • 没有这样的模块“SDWebImage”

    我安装了SDWebImage using CocoaPods 我的 podfile 是这样写的https github com rs SDWebImage https github com rs SDWebImage platform io
  • 当应用程序在后台时 didReceiveRemoteNotification 未使用 Firebase 调用

    使用 Firebase 我发送此 JSON data priority high to xxxxx content available true notification body HI title FCM Message badge 1
  • dispatch_async UIWebView 加载请求

    我正在加载我的应用程序中的 JavaScript 该脚本将尝试找到解决方案 这可能需要一些时间 我不想等待该解决方案超过 5 秒 在这种情况下 我只想停止请求并向用户显示一条消息 我一直在尝试使用 NSTimers 和dispatch as
  • 如何将 UIView 从右上角设置动画/旋转 90 度?

    我花了几个小时试图找到一种方法来将 UIView 从右上角设置动画 旋转 90 度 效果几乎应该像屏幕顶部的旋转门一样 希望有人可以帮忙 因此 在我按下回车键后 我突然将两个和两个放在一起 并认为节拍器样本的工作方式有点像一扇旋转门 这让我
  • 在没有付费开发者帐户的情况下使用 iOS 应用程序超过 7 天?

    我想把我写的一个应用程序放在我的手机上并长期使用它 我没有付费开发者帐户 所以现在它会在 7 天后过期 有什么方法可以使用我的应用程序而无需每年支付 100 美元购买专业开发者帐户 无需越狱 我必须付费才能在自己的手机上使用自己的应用程序
  • iOS心率检测算法

    我正在尝试在我正在开发的应用程序中实现心跳记录功能 首选方法是使用 iPhone 的摄像头 在灯亮的情况下 让用户将手指放在镜头上 然后检测视频源中与用户心脏相对应的波动 我通过以下堆栈溢出问题找到了一个非常好的起点here https s
  • IOS:触摸 Imageview 时的事件

    我有一个带有 png 的 ImageView 我想这样做 当有人触摸这个 imageview 时 它的 alpha 更改为 0 0 这可能吗 全部无按钮 您可以使用UITapGestureRecognizer添加到UIImageView v
  • 如何更改 iOS 13 中 UISegmentedControl 中分段的颜色?

    A UISegmentedControliOS 13 中具有新的外观 并且用于更改分段控件颜色的现有代码不再像以前那样工作 在 iOS 13 之前 您可以设置tintColor这将用于分段控件周围的边框 分段之间的线条以及所选分段的背景颜色
  • UITextView:禁用选择,允许链接

    我有一个UITextView https developer apple com library ios documentation UIKit Reference UITextView Class index html它显示一个NSAtt
  • UIButton 分组按钮

    我正在尝试创建一个完全像这样设置的按钮 我该怎么做 有人可以给我看代码吗 有没有办法像这样对 UIButton 进行 分组 你会想要使用一个UITableViewController部分设置为UITableViewStyleGrouped
  • reloadData 不调用 cellForRowAtIndexPath

    我的项目使用分割视图控制器 其中包含一个带有课程时间列表的表格视图和一个详细说明课程时间的主视图 当应用程序首次加载时 表格视图中没有任何条目 主视图显示登录屏幕 当用户登录时 表视图应该重新加载包含每个班级标题的文本 我无法正确重新加载数
  • 如何在 iOS 中屏蔽 UIView

    我见过类似的问题 但没有找到可行的答案 我想使用灰色图像屏蔽 UIView 需要转换为 alpha 比例进行屏蔽 UIView 有背景 屏蔽图像应该很容易 但我想屏蔽任何 UIView 任何线索将不胜感激 我已经研究这个问题几个小时了 并找
  • 方法未到达完成块

    我正在使用SKStoreProductViewController使用以下方法显示 iTunes 产品 该方法被调用 但我没有成功或错误 知道为什么吗 IBAction func BuySomething sender AnyObject

随机推荐

  • R:“乘以”数据框的字符串列

    不知道这个操作叫什么 谷歌也没有帮助 假设我有两个像这样的简单数据框 df1 lt data frame factor1 c a b c df2 lt data frame factor2 c x y z gt df1 factor1 1
  • 使用 javax.faces.STATE_SAVING_METHOD 在客户端保存会话的含义

    我的第一个 JSF 页面抛出异常javax faces application ViewExpiredException 当我搜索时 我得到了解决我的问题的解决方案
  • R 将上个月的值添加为列

    我有一个数据表 其中包含按月列出的日期和价格 set seed 128 dat lt data table DATE c 2014 01 01 2014 02 01 2014 03 01 2014 04 01 2014 05 01 2014
  • 如何在 x86 汇编中移动两个浮点相乘的结果?

    我目前正在尝试将两个浮点数相乘 其中一个来自浮点向量 存储在 ebx 中的地址 并与我存储在 ecx 中的值相乘 我已经确认输入值是正确的 但是 例如 如果我将 32 乘以 1 则 EAX 中的值将更改为 00000000 而 EDX 中的
  • Visual Studio 和 DPI 问题

    我正在 Windows Vista 上使用 VS2008 开发 Windows 窗体应用程序 前几天我尝试在 Windows XP 上运行我的应用程序 GUI 上的所有内容都一团糟 我意识到我在 Windows Vista 上使用 120
  • 如何获取CloudKit的实际配额?

    我使用 Cloudkit 和私有数据库将一些文件存储到 iCloud 并在 iOS 和 OSX 之间同步 现在我想实现一些功能 用户可以在不离开应用程序并查看首选项的情况下查看 iCloud 中剩余的空间 但我找不到任何有关如何获取这些数据
  • Hibernate 多对多,没有第三个表

    我有两个表 Users 和 UserRole create table Users UserId serial not null UserName varchar 100 not null UserType varchar 15 not n
  • Android 和 JFileChooser

    我开发了一个桌面应用程序 允许用户从手机中提取图像 当我第一次开始这个项目时 我的 Android 正在运行 Gingerbread 当我通过 USB 将手机插入笔记本电脑时 它会显示为 具有可移动存储的设备 因此 JFileChooser
  • Excel 宏,在运行时插入国际有效的公式

    我有一个带有宏的 Excel 电子表格 可以插入条件格式 如下所示 Selection FormatConditions Add Type xlExpression Formula1 UND A3 lastName B3 firstName
  • Delphi 汇编函数返回长字符串

    我正在尝试学习 Delphi 中的内联汇编编程 为此我发现本文非常有帮助 现在我希望编写一个返回长字符串的汇编函数 特别是AnsiString 为了简单起见 我已经写了 function myfunc AnsiString asm eax
  • 如何使用过滤分支更改多个提交的提交作者?

    我正在使用在这里找到的这个脚本link编辑所有提交的作者信息 bin sh git filter branch env filter OLD EMAIL email protected CORRECT NAME Your Correct N
  • Webpack babel 6 ES6 装饰器

    我有一个用 ES6 编写的项目 使用 webpack 作为我的打包器 大多数转译工作正常 但是当我尝试在任何地方包含装饰器时 我收到此错误 Decorators are not supported yet in 6 x pending pr
  • 当人们说 css 中没有父选择器时,他们是什么意思?

    例如 假设我有一个如下所示的 HTML 我没有选择父元素 ul 吗 ul margin 50px ul test li hello li how are u 为了理解它们的含义 您需要理解什么选择意味着在CSS parent简单 By se
  • apache beam 2.7.0 在 utf-8 编码法语字符中崩溃

    我正在尝试将 csv 从 google 云平台的存储桶写入数据存储区 其中包含法语字符 口音但我有一条有关解码的错误消息 尝试从 进行编码和解码后latin 1 to utf 8 没有成功 使用unicode unicodedata 和编解
  • php从mysql输出到html表

    目前我正在开发一个网站正常运行时间搜索引擎 但是我遇到了一个愚蠢的问题 我想在表中输出多个 mysql 行 但是下面的代码会导致为找到的每一行创建一个单独的表 预先感谢您的帮助 searchTerm trim GET searchterm
  • Microsoft Graph SDK - 登录

    使用 MS Graph 是否可以只登录一次 目前 每当我调用 graphServiceClient 时 它都会要求我登录或选择登录的用户 有什么方法可以避免选择登录用户的过程吗 提前致谢 目前 这就是我初始化 graphService 的方
  • FQL 错误 102 需要用户会话进行重复查询

    我有一个功能齐全的 FQL 查询 但是当第二次触发它时 我收到错误代码 102 需要用户会话 在我的应用程序上 我有一个自动完成朋友搜索功能 我正在使用 jquery ui 自动完成功能和使用 AJAX 的动态源 这是我的 PHP 函数 f
  • 如何使用apache pig在hadoop集群上加载文件?

    我有一个pig脚本 需要从本地hadoop集群加载文件 我可以使用 hadoop 命令列出文件 hadoop fs ls repo mydata 但是当我尝试在 Pig 脚本中加载文件时 它失败了 加载语句是这样的 in LOAD repo
  • 如何在c中使用宏释放指针

    我想在 C 代码中编写宏来释放许多指针 如下所示 FREE ptr1 ptr2 ptr3 ptr4 ptrx 对我来说 这比 FREE ptr1 FREE ptr2 FREE ptr3 FREE ptr4 FREE ptrx 提前致谢 问候
  • WKWebView 在未呈现时不加载资源

    我正在尝试将我的应用程序从 UIWebView 转移到 WKWebView 当应用程序启动时 我的应用程序正在将 HTML 文件下载到文件系统 下载完成后 将创建一个 webview 对象 不会显示在屏幕上 并从设备加载 HTML file