我在浏览Chrome扩展程序的结构时遇到了问题。
我的扩展程序有两个不同的部分:
它使用背景页面通过oAuth登录,然后整理oAuth中的大量数据并将其保存到chrome.storage.local
。
在浏览网页时,会调用chrome.storage.local
来检查当前域是否与oAuth中存储的信息相匹配,如果是,则使用[Rich Notifications API][1]
manifest.json
的结构正在破坏事物。
{
"name": "API Test",
"version": "3.1.2",
"manifest_version": 2,
"minimum_chrome_version": "29",
"app": {
"background": {
"scripts": ["main.js"]
}
},
"permissions": ["identity", "storage", "*://*/*"],
"oauth2": {
"client_id": "<<client_id>>",
"scopes": [
"https://www.googleapis.com/auth/plus.login",
"https://www.google.com/m8/feeds",
"https://www.googleapis.com/auth/contacts.readonly"
]
},
"content_scripts": [
{
"matches": ["*://*/*"],
"js": ["domchecker.js"]
}
]
}
当我这样做时,我从Chrome中收到以下错误:
There were warnings when trying to install this extension:
'content_scripts' is only allowed for extensions and
legacy packaged apps, but this is a packaged app.
是否可以串联进行这两个过程?如果没有,我如何使用后台页面检查页面刷新并运行脚本?
答案 0 :(得分:5)
您的清单是应用清单,由错误提供有用的建议。
要修复,请删除app
&#34;包装&#34;,它应该只是background.scripts
键。然后它将是一个有效的扩展清单。
值得注意的是:chrome.notifications
不适用于内容脚本;您需要使用Messaging请求您的背景页面进行展示。