2

I made and packed a chrome extension into a .crx file and dragged the .crx into chrome://extensions to install it.

The extension worked fine, except when I clicked the 'Allow in Incognito' checkbox the extension turned grey and could not be re-enabled by clicking the 'enable' checkbox.

The only way to get it working again is by reinstalling the extension. Even when I remove the 'Read your browsing history' permission (i.e. commenting out "tabs" under permissions in the manifest) it still becomes disabled when I try to allow incognito.

Here are what my permissions look like:

Here are what my permissions look like

Here is what the disabled extension looks like:

Here is what the disabled extension looks like

Xan
  • 74,770
  • 16
  • 179
  • 206
T. Wak
  • 21
  • 3
  • Hi, welcome to stackoverflow. This site is only for asking questions regarding programming. please ask other types of questions on their special ones. – Ashkan S Aug 25 '16 at 19:21
  • @AshkanSirous You missed the mark with this comment, it's a valid development question. – Xan Aug 31 '16 at 10:29

1 Answers1

1

The culprit seems to be, indeed, "Not from Chrome Web Store". While developers have the option of installing self-packed CRX extensions for some testing, it's severely restricted (as it is a possible malware vector). This is a conscious decision by Google.

Seems like elevating privileges of self-packed CRX-installed extensions cause a protection mechanism to kick in and disable them. The fact that it's permanently disabled provides evidence for that theory. The only authoritative answer would be the source code, though (and it's probably not part of the open Chromium code).


If you're writing an extension for yourself only, you can load it as unpacked (and live with the warning on every Chrome restart).

If you want to share your extension with others, your only recourse it to publish it in the Web Store or convince them to use it unpacked.

Xan
  • 74,770
  • 16
  • 179
  • 206
  • Thanks! I noticed that it seemed to work fine after I uploaded it to the chrome web store and installed it from there instead. – T. Wak Aug 31 '16 at 16:38