iOS 开发中的 Web 视图交互与数据泄漏问题
1. JavaScriptCore 与 UIWebView 的 JSContext 操作
1.1 JSContext 访问问题
JavaScriptCore 框架存在一个常见问题,即没有官方文档说明如何访问 UIWebView 的 JSContext。不过,开发者们发现了一些方法,大多涉及使用 valueForKeyPath 方法。示例代码如下:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
JSContext *context = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
context[@"document"][@"cookie"] = @"hello, I'm messing with cookies";
}
需要注意的是,这种方法并非苹果官方认可,代码能否通过 App Store 审核并无保障。
1.2 Cordova 执行 JavaScript
Cordova(Adobe 收购 Nitobi 前称为 PhoneGap)是一个 SDK,它以平台无关的方式为 Web 视图的 JavaScript 执行环境提供原生移动 API。这使得开发者可以使用 HTML、CSS 和 JavaScript 开发移动应用,且应用能在 Cordova 支持的所有平台上运行。
超级会员免费看
订阅专栏 解锁全文
17

被折叠的 条评论
为什么被折叠?



