Как определить, установлено ли расширение Chrome реальным пользователем против меня во время разработки?

Я использую Analytics в своем расширении Chrome. Я хочу выполнить код аналитики только в том случае, если расширение используется реальным человеком (не я, пока я над ним работаю). Выполнимо ли что-либо из следующего и какое лучше?

  1. Определите, было ли расширение установлено упакованным или распакованным. Я думаю, что это лучшее, потому что распаковка означает, что она "в разработке" и никак не связана с моей машиной. Может ли расширение знать это программно?

  2. Пусть расширение ищет что-то специфичное для моей среды. Я не уверен, что это такое (расширение с открытым исходным кодом, поэтому оно не может быть слишком приватным).

  3. Имейте опцию "режим разработчика" на странице настроек. Выполнимо, но это означает, что любой, кто устанавливает расширение, может просто включить его.

  4. Установите переменную localStorage вручную и никогда не стирайте ее. Выполнимо, но не лучшее решение, потому что если оно когда-нибудь исчезнет, ​​мне придется его сбросить. И я должен помнить, чтобы не удалять его, если я когда-либо удаляю ключи из localStorage.

  5. var useAnalytics = false во время разработки установите значение true перед выпуском. Это не автоматически, но это вариант.

  6. Что-то другое?

2 ответа

Решение

Ваше расширение производства будет иметь один extension_id это не изменится, пока у вашего распакованного расширения будет случайный extension_id это изменится, если вы удалите и загрузите его снова. Вы можете использовать il8n API, чтобы получить extension_id проверьте, соответствует ли оно производству extension_id,

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

Вы можете установить отключение Google Analytics https://chrome.google.com/webstore/detail/fllaojicojecljbmefodhfapmkghcbnh?hl=en

Другие вопросы по тегам