【发布时间】:2014-09-17 08:16:05
【问题描述】:
我正在测试扩展更新。我想用商店的扩展来测试它。我可以通过chrome://extensions 使用所需的密钥(通过manifest.json 定义)加载扩展名加载解压的扩展名,但是一旦我打包它,密钥就会发生变化——无论是在使用@ 987654323@ 没有它。
是否可以使用与 Chrome 网上应用店中相同的密钥打包扩展程序?
【问题讨论】:
我正在测试扩展更新。我想用商店的扩展来测试它。我可以通过chrome://extensions 使用所需的密钥(通过manifest.json 定义)加载扩展名加载解压的扩展名,但是一旦我打包它,密钥就会发生变化——无论是在使用@ 987654323@ 没有它。
是否可以使用与 Chrome 网上应用店中相同的密钥打包扩展程序?
【问题讨论】:
扩展 ID 直接从 "key" 计算而来,而 "key" 又基于用于打包扩展的 .pem 文件。
对于开发,您可以将您的扩展程序 ID 设置为您想要的任意值,前提是您已获得该扩展程序 ID 的 key。但是,您不能 打包具有任意扩展 ID 的扩展,除非您有 .pem 文件,其中 key可以推导出来。
如果您在首次将扩展程序上传到 Chrome 网上应用店时没有包含名为 key.pem 的文件,那么您无法创建具有给定扩展程序 ID 的 CRX 文件,因为.pem 文件将只有 Chrome 网上应用店知道(.pem 文件如果省略则由 CWS 自动生成)。
但是,您可以通过在清单文件中设置 "key" 来加载具有首选扩展 ID 的解压缩扩展,有关详细信息,请参阅 How to change chrome packaged app id Or Why do we need key field in the manifest.json?。
【讨论】: