【问题标题】:How to enable LocalStorage in QML WebView for Android?如何在 QML WebView for Android 中启用 LocalStorage?
【发布时间】:2016-03-13 02:14:43
【问题描述】:
我正在为 Android 构建基于 webview 的 Qt 应用程序,它与 Emberjs 对话。但是,QML WebView 似乎不支持 LocalStorage(但支持 SessionStorage)。
有什么方法可以启用它吗?或者您可以帮我在文档中找到一行说明 QML WebView 不支持 LocalStorage,因为相同的代码适用于 iOS?
(我知道 Qt 不支持移动设备的 WebEngineView 和 WebKit。)
【问题讨论】:
标签:
android
qt
local-storage
qml
ember-local-storage
【解决方案1】:
如way所述:
WebView 在 QML 应用程序中呈现 Web 内容。
WebView 是一个组件,用于从 Web 下载内容,您无法从内部访问属于周围环境(即您的 QML 应用程序)的对象。
无论如何,您可以通过onNavigationRequested 信号拦截请求(有关更多详细信息,请参阅here),因此您可以想象一个尝试通过 REST API 查询服务的 Web 应用程序和一个拦截这些请求的应用程序并与本地存储交互。
老实说,通过查看 Qt 4.8 的 documentation,WebView 提供了一个 way 来从 QML 环境注入对象,但它似乎在 Qt 5.5 上不再可用。
无论如何,我强烈建议您查看 Qt 网站上的 these 示例:也许它们会有所帮助。