QuickWebViewController
一款出色的基于插件的 WebViewController。 一款基于插件的 WebView 视图控制器,您可以基于它设计您的浏览器插件,然后像积木一样来组装它们。
特性 / Features
- 基于插件的 WebView 视图控制器,像积木一样自由组装插件,为 iOS 应用提供一个强大的 H5 容器。
- 基于 SmartJSWebView,支持 H5 页面通过 JavaScript 与 Native App 交互的 WebView。
- 支持扩展,您可以根据此 WebView 视图控制器进行定制开发,以创建您自己的插件。
- 强大的基础插件支持,您几乎无需编写任何代码即可运行一个强大的 H5 容器,满足大部分应用场景:
- QuickWebToastPlugin(toast 插件) - 当页面出现错误时会以 toast 方式进行提示。
- QuickWebProviderPlugin(provider 插件) - 类似微信中的“此网页由xxx提供”。
- QuickWebQRCodePlugin(qrcode 插件) - 支持长按二维码图片进行二维码识别。
- QuickWebSharePlugin(share 插件) - 支持将页面分享到社交平台的插件。
- QuickWebSpotlightPlugin(spotlight 插件) - 支持将页面信息自动添加到 Spotlight 搜索的插件。
- QuickWebLNRefreshPlugin(LNRefresh 插件) - 基于 LNRefresh 下拉刷新的插件。
- QuickWebMJRefreshPlugin(MJRefresh 插件) - 基于 MJRefresh 下拉刷新的插件。
- QuickWebJSBridgePlugin(JSBridge 插件) - 基于 JS 与 Native 交互的插件,已实现多个 proxies,详见 CoreProxies 和 ExtProxies 目录。
将持续更新......
演示 / Demo
安装 / Installation
方法一:QuickWebKit
可以通过CocoaPods获取。要安装它,只需将以下行添加到您的Podfile中
pod 'QuickWebKit'
使用 / Usage
QuickWebViewController *webVC = [QuickWebViewController alloc] initWithUrlString:@"https://www.baidu.com"];
QuickWebProviderPlugin *providerPlugin = [QuickWebProviderPlugin new];
[webVC registerPlugin:providerPlugin];
//...
[self.navigationController pushViewController:webVC animated:YES];
或
@interface BaseWebViewController : QuickWebViewController
@end
@implementation BaseWebViewController
- (void)viewDidLoad {
// register your plugins here ...
[self registerPlugins];
[super viewDidLoad];
}
-(void)registerPlugins
{
QuickWebProviderPlugin *providerPlugin = [QuickWebProviderPlugin new];
[self registerPlugin:providerPlugin];
//...
}
@end
BaseWebViewController *webVC = [BaseWebViewController alloc] initWithUrlString:@"https://www.baidu.com"];
[self.navigationController pushViewController:webVC animated:YES];
待续...
版本 / Releases
2020-06-11 V2.0.4
1.新增日语翻译。
2020-06-10 V2.0.3
1.修正Bundle中其他语言翻译的问题。
2020-05-07 V2.0.2
1.调整回调日志的内容。
2020-05-07 V2.0.1
pcjbird 发布版本 build202005070001
1.新增浏览器控制台打印JS方法。
2020-03-02 V2.0.0
pcjbird 发布版本 build202003020001
1.删除 UIWebView。
2019-04-03 V1.3.5
pcjbird 发布版本 build201904030001
1.修复构建为静态库的bug。
2018-10-27 V1.3.4
pcjbird 发布版本 build201810270001
1.尝试修复一些崩溃bug。
2018-09-29 V1.3.3
pcjbird 发布版本 build201809290001
1.恢复 QuickWebLNRefreshPlugin。
2018-09-18 V1.3.2
pcjbird 发布了构建版本 build201809180001
1. 支持XCode 10。
2018-08-30 V1.3.1
pcjbird 发布了构建版本 build201808300001
1. 移除一些构建警告。
2018-08-17 V1.3.0
pcjbird 发布了构建版本 build201808170001
1. 新增导航栏按钮颜色偏好设置。
2018-06-20 V1.2.9
pcjbird 发布了构建版本 build201806200001
1. 兼容ZFPlayer最新版本。
2018-04-10 V1.2.8
pcjbird 发布了构建版本 build201804100001
1. 插件新增didCreateJavaScriptContext回调代理。
2018-03-26 V1.2.7
pcjbird 发布了 build201803260001 版本
1.调整了分享内容的 description 长度限制,取消了空格替换(因为英文描述会有bug)。
2018-03-21 V1.2.6
pcjbird 发布了 build201803210002 版本
1.放弃修改弹出菜单 icon 图片前景色。
2018-03-21 V1.2.5
pcjbird 发布了 build201803210001 版本
1.修复了导航设置网络图片失真的问题。
2.控制设置导航标题为网络图片的显示大小。
2018-03-20 V1.2.4
pcjbird 发布了 build201803200002 版本
1.修复了设置导航 title 为网络图片时显示的大小问题。
2.支持通过 YPNavigationBarTransition 修改导航背景色。
2018-03-20 V1.2.3
pcjbird 发布了 build201803200001 版本
1.修复了点击导航右侧按钮没有回调的问题。
2.修复了分享插件总是显示更多按钮的BUG。
3.修改了导航弹出菜单样式。
4.修改了导航右侧按钮顺序。
2018-03-15 V1.2.2
pcjbird 发布了 build201803150001 版本
1.QuickWebJSBridgeContactProxy:新增了一些浏览器控制台调试日志。
2018-03-14 V1.2.1
pcjbird 发布了 build201803140003 版本
1.新增了一些浏览器控制台调试日志。
2018-03-14 V1.2.0
pcjbird 发布了 build201803140002 版本
1.修复了JS插件system proxy部分接口无法调用的问题。
2018-03-14 V1.1.9
pcjbird 发布了 build201803140001 版本
1.修复了模糊查找联系人的BUG。
2018-03-10 V1.1.8
pcjbird 发布了 build201803100002 版本
1.新增了支持自定义QuickWebJSBridgePlugin JavaScriptInterface 名称以及异步回调结果Ready回调通知的javascript函数。
2018-03-10 V1.1.7
pcjbird 发布了 build201803100001 版本
1.新增了白名单功能。
2018-02-20 V1.1.6
pcjbird 发布了 build201802200001 版本
1.修复当网页加载到一半返回时仍然显示 NetworkActivityIndicator 的问题。
2.修改注册和移除通知观察者函数名,防止被继承类覆盖,导致 Bug 排查困难的问题。
2018-02-02 V1.1.5
pcjbird 发布了 build201802020001 版本
1.修改 JSProxy 引用头文件大小写问题。
2018-01-16 V1.1.4
pcjbird 发布了 build201801160002 版本
1.修复 QuickWebSpotlightPlugin 导致崩溃的 Bug。
2018-01-16 V1.1.3
pcjbird 发布了 build201801160001 版本
1.修改 toast 样式为共享样式。
2018-01-14 V1.1.2
pcjbird 发布了 build201801140001 版本
1.修复 QuickWebSpotlightPlugin 无法处理 Spotlight 搜索点击结果的 Bug。
2018-01-10 V1.1.1
pcjbird 发布了版本 build201801100001
1.修复了QuickWebSharePlugin无法显示导航栏右侧分享按钮的BUG。
2018-01-09 V1.1.0
pcjbird 发布了版本 build201801090004
1.修复了QuickWebQRCodePlugin链接检测到却无法打开的BUG。
2018-01-09 V1.0.9
pcjbird 发布了版本 build201801090003
1.修复了QuickWebQRCodePlugin手势导致不能复制网页文本的BUG。
2018-01-09 V1.0.8
pcjbird 发布了版本 build201801090002
1.优化了QuickWebQRCodePlugin插件手势。
2.修复了QuickWebQRCodePlugin本地化错误。
2018-01-09 V1.0.7
pcjbird 发布了版本 build201801090001
1.优化了作为navigationController的根视图时的显示问题。
2018-01-06 V1.0.6
1.修复了Share插件与Spotlight插件导致的崩溃问题。
2018-01-05 V1.0.5
1.修复了当UINavigationBar的translucent为No时的显示问题。
2018-01-04 V1.0.4
1.新增了Spotlight插件
2018-01-02 V1.0.3
1.新增了LNRefresh和MJRefresh插件
2.新增了是否优先使用WKWebView初始化函数
2018-01-02 V1.0.2
1.修复了QuickWebProviderPlugin字体颜色的问题
2018-01-02 V1.0.1
pcjbird 发布了 build201801020001 版本
1.修复了 dealloc 中使用 weak 导致的崩溃问题
2017-12-24 V1.0.0
pcjbird 发布了 build201712240001 版本
1.首次发布 SDK 版本