如何在 Chrome 应用程序 Web 视图中显示文件系统 URL?

2024-03-01

我有一个 Chrome 打包应用程序,要求我能够查看已保存的离线网页。当用户在线时,这些页面会从我的服务器下载并保存到 HTML5 文件系统,以便可以离线查看。这个 Chrome bug 似乎表明我想做的事情是可能的:https://code.google.com/p/chromium/issues/detail?id=343382 https://code.google.com/p/chromium/issues/detail?id=343382

基于 Chrome 应用程序“webview”文档(https://developer.chrome.com/apps/tags/webview https://developer.chrome.com/apps/tags/webview),这就是我想出来的。

在我的清单中:

"permissions": [
    {
        "fileSystem": ["write"]
    },
    "storage",
    "unlimitedStorage",
    "webview"
],
"webview": {
    "partitions": [
        {
            "name":"contentView",
            "accessible_resources":["*.html"]
        }
    ]
}

我的网络视图标签:

<webview id="websiteWebview" minwidth="800" minheight="600" autosize="on" partition="contentView"></webview>

然后我通过 javascript 添加“src”属性:

var websiteWebview = document.querySelector('#websiteWebview');
websiteWebview.setAttribute('src', decodeURIComponent(srcUrl));

这会在控制台中产生以下结果:

filesystem:chrome-extension://[appId]/[pathToFile]/index.html
Failed to load resource: net::ERR_FILE_NOT_FOUND
Not allowed to load local resource: filesystem:chrome-extension://[appId]/[pathToFile]/index.html

我不知道从这里该去哪里。在此先感谢您的帮助!


它看起来像webview标签不支持文件系统 URI -铬问题 321628 https://code.google.com/p/chromium/issues/detail?id=321638。真糟糕。

您可以尝试使用以下命令将文件读取到数据 URL文件阅读器 https://developer.mozilla.org/en-US/docs/Web/API/FileReader,然后设置webview's src属性到 URL。

我通过使用我在 NaCl 中创建的一个简单的 Web 服务器来解决这个问题,我已经将其嵌入到我的应用程序中(数据 URL 弄乱了我的文件编码)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Chrome 应用程序 Web 视图中显示文件系统 URL? 的相关文章

  • Android WebView 需要打开外部 URL 的权限吗?

    我正在尝试以下示例 但使用外部 URL 使用 WebView http android developers blogspot com 2008 09 using webviews html 该示例展示了如何从资产文件夹 file url
  • android中处理html webview的onclick功能

    我正在尝试处理 android referred 中 html 的 onclick在此输入链接描述 https stackoverflow com questions 4065312 detect click on html button
  • Android - 使用应用程序上下文创建 WebView 后如何将其附加到 Activity

    我正在使用应用程序上下文在后台创建一个 Android WebView 以便在我需要显示它时加载并准备好它 当需要时 我使用 addView 将其附加到我的 Activity 中 这通常工作得很好 但是当我尝试打开 HTML 选择下拉列表时
  • 使用 navigator.clipboard.writetext 复制到剪贴板在 android WebView 中不起作用

    我有一个简单的 android WebView 应用程序 它使用以下代码显示一个具有 复制 按钮的网站 navigator clipboard writeText Text to be copied then gt console log
  • Webview 不加载 URL,但浏览器会加载

    因此 从我的第一个屏幕开始 我将 URL 传递给要在 Web 视图中启动的活动 但是当 webview 启动时 它显示 web page not available The web page at URL might be temporar
  • cocoa WebView中innerhtml和outerhtml的区别

    我在我的应用程序中使用 cocoa webview 进行富文本编辑 只是与 webkit 中提供的innerHtml 和outerHtml 方法混淆了 谁能解释一下有什么区别 DOMHTMLElement webView mainFrame
  • Android WebView - 清除缓存

    我有一个 WebView 控件 我想每次显示当前站点 但我认为 WebView 只显示该站点的缓存版本 我尝试了所有发现的东西here https stackoverflow com questions 14392414 android w
  • Android 片段 WebView

    我为我所在国家 地区的某人创建应用程序 我的应用程序有问题 我的应用程序有幻灯片菜单 同样的这个应用程序 Youtube https i stack imgur com 4hxlM png https i stack imgur com 4
  • 下载外部pdf文件到chrome打包应用程序的文件系统

    有没有办法将pdf文件从服务器保存到chrome打包的应用程序 在我的 chrome 打包应用程序中 我有这样的东西 Download 当用户单击此超链接时 我应该能够将该 pdf 文件下载到我的 chrome 打包应用程序文件系统中 下载
  • JavaScript 无法与 android WebView 一起使用,未捕获的引用错误

    我正在尝试使用 WebView 在 Android 上加载 Web 应用程序 但 html 文件中的 JavaScript 无法正确执行 我创建 WebView 并加载主页 如下所示 web new WebView this web get
  • 是否可以使用 content:// 作为 WebView 中

    我创建了一个ContentProvider 它导出我的 asset 目录中的文件 我使用 content url 来访问 WebView 中导出的内容 以下 HTML 按预期工作 img src 我正在尝试使用 mp3 音频文件的内容提供程
  • Chrome 扩展 + 网页视图

    我正在努力寻找这个问题的明确答案 除 Chrome 操作系统外 所有操作系统均已弃用 Chrome 应用 只能在 Chrome 应用中使用 这意味着我不能或不应该在扩展中使用 如果可能 根据进一步的研究 测试和评论 绝对不能在扩展中使用 只
  • PictureListener 和 onNewPicture() 已弃用 - 替代方案?

    The Android 开发者参考 http developer android com reference android webkit WebView PictureListener html onNewPicture 28androi
  • 让回调在 JavaScript 中同步工作

    我正在使用一个名为DSBridge https github com wendux DSBridge IOS将移动应用程序 在本例中为 iOS 代码 连接到包含我的应用程序主要逻辑的 javascript 代码 这涉及在不可见的 WKWeb
  • Chrome 打包应用程序与 SQLite?

    我试图整合sql js 基于JS的SQLitehttps github com kripken sql js https github com kripken sql js 进入我的 Chrome 应用程序 但当我启动我的应用程序时 控制台
  • 无法在网络视图中滚动图像

    我为 Android 和 iOS 开发了一个 webview 应用程序 我注意到我无法滚动 Android 应用程序中的特定 html 元素 而它可以在 iOS 上运行 这是website https www blizz z de flex
  • Android 退出全屏后嵌入式 IFRAME 视频继续在后台播放

    我已经搜索了很多解决这个问题的方法 但显然我找不到 嗯 顾名思义 我有一个简单的 Android 应用程序 它有一个 Webview public class MainActivity extends Activity protected
  • Webview没有清除缓存

    为了清除 WebView 的缓存 我使用了 webview getSettings setAppCacheEnabled false webview clearCache true webview loadUrl about blank w
  • 如何在Webview中保存用户名和密码

    目前 我还在学习Android开发的过程中 所以如果我的这个问题对你来说不太容易理解 请原谅 我创建了一个 Android 应用程序 它使用 RecyclerView 显示一组列表 当用户单击列表中的每个名称时 它会将它们重定向到一组不同的
  • 三星特定的网络视图问题

    我有一个phonegap应用程序 可以在Chromium和原生的 纯粹的Android浏览器WebView中无缝运行 三星修改的 Android 浏览器中的某些内容破坏了我的应用程序 而且我一生都找不到描述三星浏览器差异的资源 该线程似乎相

随机推荐