chrome插件打包之后,显示此扩展程序可能已损坏

每日鸡汤,每个你想要学习的瞬间都是未来的你向自己求救

问题是这样的,我们有一个chrome插件的项目,但是我也没有参与开发,可以说此前对chrome插件一窍不通。但是今天呢,有个bug,要我改,我就拉一下代码看了一下,项目很简单,使用vue写的。改完bug之后要打包发布,就出现问题了。我打包完的crx文件总是显示【此扩展程序可能已经损坏】然后就用不了了!气人!

怎么回事呢,先来看看我怎么打包的

  1. 运行 npm run build        生成dist文件夹
  2. 打开 chrome://extensions 目录
  3. 点击【打包扩展程序】
  4. 选择刚才的【dist】文件和项目中的【dist.pem】密钥文件
  5. 然后生成了一个 dist.crx 文件
  6. 然后拖进  chrome://extensions 安装
  7. 然后过了一会显示【此扩展程序可能已经损坏】

看起来流程很正确对吧?

问题出在哪里呢,对比了一下线上的已发布的插件的id,和我打包出来的插件id不同

 在打包过程中使用的dist.pem文件,就是为了保证每次打包id相同。但是我打包出来依旧和线上不同,说明什么?说明我们已经发布的版本并没有用项目中的dist.pem打包。

问了一下同事,得到了正确答案:

  1. 运行 npm run build        生成dist文件夹
  2. 压缩 dist 文件,生成zip
  3. 然后把zip文件上传到谷歌开发平台
  4. 然后在从谷歌开发开发平台下载crx文件
  5. 最后安装crx 才没有问题

总结一下,我们自己随意打包的crx 文件直接安装会报错,所以不要自己打包了,要用谷歌开发者平台打包,但是我没有那个平台的权限,我现在就不截图展示了,可以参考一下这篇文章

所以不报错的前提,是我们应该在谷歌开发者平台申请一个账号,但是有的人就是自己写着玩的不想上线,那就可以直接安装dist目录就行,就是传说中的【加载已解压的扩展程序】这样安装的插件有一个下图所示的图标

 但是无所谓,能用就行!

所以如果你是一个开发者,在打包自己的插件之后报错,就需要按照上述方法。

如果你是一个月用户,安装别人的插件报错,那么你就可以安装解压后的插件,不要直接安装crx文件,参考

猜你喜欢

转载自blog.csdn.net/qq_17335549/article/details/130821735
今日推荐