问题标签 [manifest.json]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
128 浏览

javascript - Chrome.tabs 以未定义的形式返回 Web 应用清单

我的清单文件是manifest.json

我的 Background_Tabs.js 是

和 Atlast 我将清单文件添加到 index.html 网络应用程序 -

现在,当我在加载网页后看到我的控制台时 - 它返回为“chrome.tabs”的未定义。

我该如何解决这个问题?

0 投票
2 回答
2693 浏览

android - PWA 不会在 android 上以独立模式打开

我正在尝试在最新的 Chrome 和 Android (7) 上实现添加到主屏幕。我在清单文件中指定了“独立”,但该应用程序仅在浏览器中打开。我之前在同一设备上获得了所需的行为,但似乎无法重现它。

我看到有人在这个问题上有类似的问题。我遵循了建议的解决方案 - 使用 Lighthouse 验证 PWA 属性 - 但即使 Lighthouse 获得完美的 100 分,我仍然无法让应用程序以独立模式打开。

有任何想法吗?

我的参考代码(也在GitHub 上托管在 GitHub Pages 上):

索引.html

sw.js

清单.json

编辑:

我在 v63 和 Canary v66 上再次遇到了类似的问题,似乎使用 localhost 导致了同样的问题 - 无法独立启动。托管完全相同的代码并访问 HTTPS 站点使我能够独立启动。

0 投票
2 回答
272 浏览

google-chrome - Chrome 扩展背景脚本路径

我正在尝试从我的Chrome 扩展程序的 manifest.json 中的cdn 路径( ' https://cdn.xyz.com/scripts/background.js ' )加载后台脚本,但它向我抛出了错误 -无法加载后台脚本' https://cdn.xyz.com/scripts/background.js '。我已经在 manifest.json 文件的 content_security_policy 中添加了https://cdn.xyz.com

清单.json

0 投票
2 回答
1499 浏览

android - 未检测到清单,我想显示“添加到主屏幕”按钮

我在掌握 google chrome 的“Service Workers”和“Manifest.json”方面遇到了一些麻烦。

我的最终目标是当用户通过他们的移动设备在 android 上的 chrome 浏览我的一个网站时,会出现一个“添加到主屏幕”按钮。

所以我有我的 manifest.json,在根目录和<head>标签中我有以下内容:

<link rel="manifest" href="/manifest.json">

当我第一次将它放在 head 标记中,然后转到桌面上 chrome 开发工具中的“应用程序”选项卡时,它看到了 manifest.json 并正确显示了其中的所有信息。然后,只要我浏览到同一域上的不同页面,开发工具就会显示消息“未检测到清单”。

我不知道为什么。很明显,如果我检查页面,转到该<head>部分并找到link rel,我右键单击 manfiest.json 链接并在新选项卡中打开 - 它可以完美加载。我也使用manifest.json 验证器对其进行了验证,它报告“成功:清单有效!”。

为什么会暂时退出?我怎样才能让这个该死的按钮出现?

旁注,我的服务人员代码(再次在 中<head>)如下:

我在控制台“ServiceWorker 注册成功”中收到消息。 但是service-worker.js文件中没有任何内容,肯定需要一些代码吗?我发现的教程都没有提到在其中放置任何数据。这很令人困惑。

0 投票
1 回答
11137 浏览

scope - 从带有端口号的本地 IP 地址提供渐进式 Web 应用程序时,我应该在 manifest.json 文件中赋予范围属性什么值?

我的本地 Node JS 测试服务器上的 Web 应用程序清单范围存在问题。我无法获得正确的范围,因为 IP 地址上的端口号妨碍了我。我正在使用以下地址访问我的服务器:

当我使用 Chrome 开发工具查看我的清单时,在 Application 选项卡下,它显示清单文件的 url 为::2468/manifest.json:2468不是我的根文件夹中的目录。

我将所有文件保存在根目录中,包括server.jsmanifest.json和索引,称为my-app.html

在我的清单文件中,我有:

当我将代码上传到我的 Github Pages 站点时,一切都运行良好:工作示例。我认为问题出:2468在我的 IP 地址后面。我没有像 Github Pages 这样的完全限定域名的问题。

如果我尝试将端口号放入清单的范围,如下所示:

它打破了我的清单的范围,我收到了这个警告:Manifest: property 'scope' ignored. Start url should be within scope of scope URL.这很有意义,因为:2468它不是我目录中的文件夹。这只是 Chrome 决定附加到我的清单文件的 url 的东西。

如何解决清单文件的范围以忽略端口号?为什么 Chrome 开发工具显示我的清单位于:2468不存在的目录中?

这是一个问题的原因是因为我的 Web 应用程序无法在应用程序模式下打开,并带有全屏窗口和启动画面。它仅在带有 url 栏的浏览器中打开,并且似乎根本没有使用应用程序清单。

更新:2017 年 11 月 5 日

通过使用该 URL https://192.168.0.101:2468/my-app.html,我可以访问我的 Web 应用程序,而无需:2468/在清单 url 中显示开发工具。我的应用程序确实安装到主屏幕和应用程序抽屉,但它只在浏览器中打开,而不是带有启动屏幕的全屏应用程序。我没有收到有关清单范围的警告,并且我的服务人员注册并完美运行。我开始认为不能从 IP 地址安装渐进式 Web 应用程序,而只能从完全限定的域名安装。这可能是问题吗?

0 投票
1 回答
274 浏览

tfs - 从扩展代码中读取 VSTS/TFS 扩展版本

有没有办法从扩展中读取扩展版本号?

我们正在手动将版本添加到vss-extension.jsontask.json。如果有人提供从这些地方检索版本的指南,那将有很大帮助。

1) vss-extension.json 在此处输入图像描述

2) 任务.json

在此处输入图像描述

0 投票
1 回答
1634 浏览

google-chrome-extension - Chrome Extension: Refused to load the script because it violates the following Content Security Policy directive: "script-src 'self'

I'm building a Chrome extension and using $.ajax (jsonp) to pull article titles and urls from a json array on a wordpress site.

If I GET from a https site, it works fine, however if I GET from a http site I get the following error.

Unfortunately it's not possible in this instance to use HTTPS on this particular site, so how do I allow a none http site in my Content Security Policy in my manifest.json or is it strictly https only?

0 投票
1 回答
3687 浏览

android - PWA - 清单属性“显示”:“独立”不适用于 Android

我注意到我的 PWA 有一个非常奇怪的行为。我可以在 Windows 上以“独立”模式启动它,但是当我尝试在我的 Android 设备上执行相同操作时,它会忽略“独立”值并在 Chrome 中打开 URL(Android 7.0,Chrome-Android v62.x) . 它在 Chrome-Android Beta v63.x 中也不起作用(与这篇文章有关,指的是 chrome 62.x 中的错误)。我已经使用Manifest Validator和 Lighthouse 检查了清单文件。这两个工具都验证了文件并且没有向我显示任何错误/问题。“添加到主屏幕”对话框直接显示(在每次首次启动时),我可以将 PWA 添加到我的主屏幕。服务人员按预期工作,离线运行应用程序(在 Windows 和 Android 上)没有任何问题。

我正在使用笔记本上的代理在我的 Android 设备上进行测试(以防万一这可能相关)。我也尝试了不同的 Android 设备,但出现了同样的问题。

注意:不同的 PWA 按预期工作,例如2048 作为 PWA

这是我的 manifest.json :

清单文件链接在我的 index.html 的标题中,并带有其他移动设备:

该网络应用程序是使用 angular2 (angular-seeds) 构建的,以防万一有人遇到类似问题..

感谢您的时间和评论!

更新 1:

当我不使用代理从我的移动设备访问我的 PWA 而是通过本地网络的开放端口访问它时,独立功能可以正常工作(但服务工作者注册失败..)。我仍然不确定为什么代理会出现这个“错误”。

更新 2:

我真正的问题是,为什么会这样?另一个问题是,如果我找到的所有解决方案都有妥协,我如何才能真正在真实的移动设备上测试我的 PWA 的行为和感觉?关于开发环境..

我在安卓设备上的测试方式:

  • 打开我的笔记本的一个端口并通过我的笔记本的 ip 地址访问我的本地网络内部(服务人员无法工作,因为不是 https 也没有本地主机,但 pwa 以独立模式启动 -.-)
  • 将 Android 设备上的代理设置为我的笔记本的 ip(服务工作者工作,独立模式失败)
0 投票
1 回答
281 浏览

javascript - Firefox 57 全屏模式仍未生效

刚刚在我的 Android 上安装了期待已久的 Firefox 57,很失望地看到全屏仍然无法工作 :-( 尽管它在这里被预告

“现在,Firefox for Android 57 支持 Web App Manifest 显示字段的全屏值(错误 1126479)。”

有没有人有这个工作?

以我的Brotkrumen Web App 为例。

这是我的清单:-

0 投票
1 回答
498 浏览

ruby-on-rails - Rails 5.1 api webpacker 和 vuejs

我正在尝试使用 Cloud9 上的 webpacker 在 VueJs 中创建 Rails API 和客户端。

标准安装后:npm install -g yarn && rails _5.1.4_ new . --api --webpack=vue

我正在使用Foreman来启动 rails 和 webpack,这是文件。

我将开发部分更改为config/webpacker.yml

启动foreman startwebpack 时,会创建public/packs/manifest.json包含以下对象的内容。

我创建了一个public/index.html包含以下内容的文件

现在,当我转到 URL 时Hello World from Webpacker,我的 JavaScript 控制台和Hello Vue!浏览器中有 。

我的问题是:是否可以使用生成的这个manifest.json来自动启动好的文件(js,css)以及如何?