gpt4 book ai didi

ios - 在 WKWebView 中启用应用程序缓存

转载 作者:可可西里 更新时间:2023-11-01 03:08:26 32 4
gpt4 key购买 nike

我知道 iOS WKWebView 不支持离线应用程序缓存。

这是在 Safari 中启用的,所以我在 webkit 项目中搜索了负责的代码并找到了这个

WKPreferences

- (void)_setOfflineApplicationCacheIsEnabled:(BOOL)offlineApplicationCacheIsEnabled;

有人熟悉这个方法吗?是否可以通过访问此私有(private)方法在 iOS 中启用应用程序缓存? (我不会将应用程序发送到 Appstore)

最佳答案

2022 年更新

According to one of the comments below, this hack doesn't work anymore.


是的,我们可以通过访问私有(private)API来启用应用缓存

WKPreferences 创建一个类别并添加到以下方法签名中。

@interface WKPreferences (MyPreferences)
- (void)_setOfflineApplicationCacheIsEnabled:(BOOL)offlineApplicationCacheIsEnabled;
@end

(我尝试了 performSelector:withObject: 但它没有用。不知道为什么)

初始化WKWebView后,在下面的对象中调用上面的方法开启appcache

  [_wkWebView.configuration.preferences _setOfflineApplicationCacheIsEnabled:YES];

它将在 Cache 目录中创建 ApplicationCache.db 文件并允许 Web 应用程序离线工作。

警告:

2.5. Apps that use non-public APIs will be rejected

关于ios - 在 WKWebView 中启用应用程序缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29892898/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com