如何判断真实用户在开发过程中是否安装了Chrome扩展程序?

Ale*_*rin 5 google-chrome google-chrome-extension

我在Chrome扩展程序中使用Google Analytics.我只想在真人使用扩展程序时才执行分析代码(在我工作的时候不是我).以下任何一种可行的,哪种是最好的?

  1. 确定扩展程序是已安装打包还是已解压缩.我认为这是最好的,因为拆开包装显然意味着它"处于开发阶段"并且它不以任何方式特定于我的机器.扩展程序能以编程方式知道吗?

  2. 让扩展程序查找特定于我的环境的内容.我不确定那是什么东西(扩展是开源的,所以它不能太私密).

  3. 在选项页面上有一个"开发者模式"选项.可行,但这意味着安装扩展程序的任何人都可以打开它.

  4. 手动设置localStorage变量,永远不要删除它.可行但不是最佳解决方案,因为如果它消失了,我必须重置它.如果我从localStorage删除密钥,我必须记住不要删除它.

  5. var useAnalytics = false在开发时,在发布之前将其设置为true.它不是自动的,而是一种选择.

  6. 别的什么?

abr*_*ham 8

您的生产扩展程序将有一个extension_id不会更改,而您的解压缩扩展将具有随机extension_id,如果您再次删除并加载它将更改.您可以使用il8n APIextension_id检查它是否与生产匹配extension_id.

var extensionId = chrome.i18n.getMessage('@@extension_id');