WKWebView网页加载组件

WKWebView 的加载速度、性能和安全性都比 UIWebView 强不少。现在搞 iOS 开发的,基本都换成它了。你要是还在用 UIWebView,真的得赶紧换,不然 App Store 审核都卡你。

WKWebView的配置也挺灵活,比如能设置自定义的 UserAgent,还能控制是否加载图片、启用 JavaScript 等,适配各种业务场景。响应也快,内存占用还低,真的是个不错的选择。

像加载网页这种事,用起来也不难,创建个WKWebView实例,再调用loadRequest,几行代码搞定。想跟网页里的 JavaScript 交互?也有现成的WKScriptMessageHandler机制,逻辑清晰,调试也方便。

而且你可以加上进度条,监听estimatedProgress,用户体验一下子就拉满了。安全方面也不用太担心,Content Security Policy 和 JS 环境隔离都做得不错。

如果你做的是 Hybrid App,这玩意儿简直是标配,UI 交互顺滑,还能用原生能力增强,比如调用相机、定位啥的。搭配上像WKUserContentController这样的配置方式,扩展性也强。

哦对了,如果你想看一些更详细的用法和升级替代方案,可以参考下面这些资源,里面讲得还蛮细的。

zip
webview.zip 预估大小:58个文件
folder
webview 文件夹
folder
webviewTests 文件夹
file
Info.plist 733B
file
webviewTests.m 886B
folder
webview.xcodeproj 文件夹
folder
project.xcworkspace 文件夹
file
contents.xcworkspacedata 152B
folder
xcuserdata 文件夹
folder
mac.xcuserdatad 文件夹
file
UserInterfaceState.xcuserstate 35KB
folder
xcuserdata 文件夹
folder
mac.xcuserdatad 文件夹
folder
xcschemes 文件夹
file
xcschememanagement.plist 659B
file
webview.xcscheme 4KB
file
project.pbxproj 19KB
folder
webview 文件夹
file
ViewController.m 826B
file
Info.plist 2KB
file
main.m 321B
folder
Base.lproj 文件夹
file
LaunchScreen.storyboard 2KB
file
Main.storyboard 2KB
file
ViewController.h 202B
file
AppDelegate.h 264B
folder
Assets.xcassets 文件夹
folder
AppIcon.appiconset 文件夹
file
Contents.json 1KB
file
AppDelegate.m 2KB
folder
.git 文件夹
folder
logs 文件夹
file
HEAD 164B
folder
refs 文件夹
folder
heads 文件夹
file
master 164B
folder
info 文件夹
file
exclude 40B
file
index 2KB
file
COMMIT_EDITMSG 15B
folder
objects 文件夹
folder
pack 文件夹
folder
ee 文件夹
file
ea76c2db59dbb9faaab2cda4e40c063970101d 214B
folder
info 文件夹
folder
db 文件夹
file
3f0ce163c8033a175d27de6a4e96aadc115625 59B
folder
de 文件夹
file
8dcad3e7a4912baed2566f06db7f5b6412d58b 69B
folder
a9 文件夹
file
559dc9bde8565bf2e5c280baeae9d3ca2dd2ed 254B
folder
9a 文件夹
file
1df9b0d698a2a9aa041eac4bcca6619196c52d 528B
file
0632190280ff5134a9531ccaefbb09405b3fb1 103B
folder
bc 文件夹
file
24c40135ff95a1b94e928d3e83216d3d537a5d 216B
folder
40 文件夹
file
c6215d906736d7b2a439c17cf9ee0776580474 535B
folder
99 文件夹
file
2dd88565ae5853b2a48103fbb0420b499981e0 3KB
folder
ac 文件夹
file
1b8b6019d5e6bd0e57830a9f9a4104bd09d60d 305B
folder
21 文件夹
file
0a38b82c35186ce4fe6d14d1dd98d105c69f29 628B
folder
2e 文件夹
file
721e1833f03bb0e1b962a84491d7e43e3fef9c 753B
folder
36 文件夹
file
d2c80d8893178d7e1f2964085b273959bfdc28 201B
folder
c8 文件夹
file
01715da89b52f47db0a92dc7ccd2c515d045f2 286B
folder
33 文件夹
file
11f2b2c85d666cac3fbfc437088794c15d7337 131B
folder
45 文件夹
file
f16ed7d802338e927f1014b780b92f1fcc6905 51B
folder
f5 文件夹
file
6d2f3bb56e8474d49393008be744986bd41c3c 719B
folder
54 文件夹
file
8be297029868413991b7e0290282b3de1fa2dd 95B
folder
b1 文件夹
file
d1067ae59af05269ef7a96f11df193b123e7f8 142B
folder
3c 文件夹
file
dea766dc0bb13f0f5c362cf0572a8cb6d9a8db 141B
folder
6e 文件夹
file
100d939081a579b09029532f0cb5ba63b3887a 133B
folder
6b 文件夹
file
bbce4ccced6be6ea595d766e68304c99b8a4a7 164B
folder
ba 文件夹
file
72822e8728ef2951005e49b6c27a2f1da6572d 353B
folder
c0 文件夹
file
2122ce01fc3354f8f0b7b2d729b7ea763dcaed 94B
folder
83 文件夹
file
325b9bf0b9188ef08402d46694f2ea15a1a251 320B
folder
f1 文件夹
file
81151447edaef49d0a7dec652bf85d99b68155 447B
folder
89 文件夹
file
ce24774bb4723cbf306e26a6056d82a773d3dc 57B
folder
49 文件夹
file
df820a5695f0564315cc1e4a4e320f5ecedb78 908B
folder
b0 文件夹
file
4364089fdc64fe3b81bcd41462dd55edb7a001 57B
folder
18 文件夹
file
5e2af4286b4122f668b8c5636e2215bf981f0a 92B
file
HEAD 23B
file
config 144B
folder
refs 文件夹
folder
heads 文件夹
file
master 41B
folder
tags 文件夹
folder
hooks 文件夹
file
README.sample 177B
file
description 73B
folder
webviewUITests 文件夹
file
Info.plist 733B
file
webviewUITests.m 1KB
...
zip 文件大小:65.63KB