Google chrome extension Chrome扩展清单2和1,兼容性

Google chrome extension Chrome扩展清单2和1,兼容性,google-chrome-extension,manifest,chromium,Google Chrome Extension,Manifest,Chromium,我有一个最近升级到清单版本2的扩展。为此,我删除了清单文件中的background\u页面属性,并将其替换为background:{page:“background.html”}。这很有效,一切都很好。然而,事实证明,有些浏览器和用户使用旧版本的Chrome,或者Rockmelt和其他基于Chrome的浏览器版本,但不支持background-属性,或者manifest\u version:2 一个简单的解决方案是,除了background-属性之外,只需将background\u页面:“bac

我有一个最近升级到清单版本2的扩展。为此,我删除了清单文件中的
background\u页面
属性,并将其替换为
background:{page:“background.html”}
。这很有效,一切都很好。然而,事实证明,有些浏览器和用户使用旧版本的Chrome,或者Rockmelt和其他基于Chrome的浏览器版本,但不支持
background
-属性,或者
manifest\u version:2

一个简单的解决方案是,除了
background
-属性之外,只需将
background\u页面:“background.html”
-属性添加到清单文件中。这将在
chrome://extension
开发人员模式:

There were warnings when trying to install this extension:
     'background_page' requires manifest version of 1 or lower.

我的问题是:两者都有负面影响吗?例如,当
background\u页面
被弃用时会发生什么?我的用户会看到任何警告吗?有什么想法吗?

即使在
manifest.json中有未记录的、不推荐的或实验性的属性,也会发出警告,这些警告只有在“开发者模式”处于活动状态时才可见。它们不会影响最终用户。根据我的选择,您可以在清单中保留
背景页面:

您还可以考虑使用旧浏览器阻止用户下载最新的更新。这有点太晚了(因为您的

manifest\u vesion:2
更新已发布),但您可以在这里做一些小动作。降级到
manifest\u版本:1
,等待所有人下载降级版本,然后再次使用
manifest\u版本:2
推送更新。这次添加
最小chrome\u版本:18

您应该将“后台页面”替换为“后台”

比如:

而不是:

"background": {"page": "background.html"}

是的,我有。问题是两者兼有是否会对扩展产生负面影响。我认为您误解了属性。它不是您个人对清单文件的修订,您必须在每次更改时增加它,它是一个格式说明符。所以不需要降级升级的把戏。@Psycho我知道清单版本的作用。这里的问题是OP使用manifestv2推出了一个新版本的扩展,而当时很多浏览器还没有识别它(Chrome/Chromium版本<18)。因此,我的建议是使用旧的manifest v1发布他的扩展的新版本,过一段时间后,使用manifest v2再次发布,这次添加了
minimum\u chrome\u version
参数。这样,旧浏览器就不会升级到新的(不受支持的)扩展版本。我明白了,我不认为Chrome可以在不检查清单版本的情况下更新扩展。
"background": {"page": "background.html"}