I have created pretty easy extension that is working well in "load unpacked mode" and even as .crx file. But I can't install it from Chrome Store, it says "no file" while I trying to install it. Other users reporting about the same problem. Is there something at my side or google side?
ps. extension page, source code.
Google Chrome considers a file to be installable if either of the following is true:
The file has the content type application/x-chrome-extension
The file suffix is .crx and both of the following are true:
The file is not served with the HTTP header X-Content-Type-Options: nosniff
The file is served with one of the following content types:
empty string
"text/plain"
"application/octet-stream"
"unknown/unknown"
"application/unknown"
"*/*"
Take a look here
I had the same problem, unfortunately mine stayed broken for 2 days. I managed to fix it simply by bumping up the version number and re-uploading the zip file.
Related
I've been working on a chrome extension for several weeks now and just recently uploaded my extension to the chrome web store.
When I try to install it from the store, it gives me an error saying "Invalid Manifest" and nothing more.
Is there a way to figure out what is wrong with my manifest file that the chrome store doesn't like? My browser installs the extension fine (and it works) when I load it in via developer mode.
Since I can't copy it to the code tag and it preview well, I've linked the Manifest file below: Manifest file on Github
I've read the manifest v2 documentation and have looked on several google groups for assistance. Any help is greatly appreciated, thanks!
Turns out "Tabs" can not go under permissions, it MUST be an optional permission. AND you must encode the manifest file as UTF-8 rather than ANSI.
I have an issue when i try to upload an attachment to my application.
When the file is still open on my computer and i try to upload it, i get an application/octet-stream MIME type instead of application/sword. But when i close it, there is no error while uploading.
Files what have a problem are excel or word files and are stocked in database.
The configuration of the database allows to save in binaries and text (depending of the file)
Obviously, i could fix it by closing it. But i would like to understand how/why my file is uploaded in another MIME type.
EDIT : The browser is IE9 (compatibility with IE7) and the OS is windows 7.
It happends on each computer of my service. (with the same configuration)
When a CRX is added to the Chrome web store, Google adds a directory _metadata to the crx. Older versions of Chrome do not know about this directory (tested on Chrome 27) and throw this error:
Package is invalid. Details: 'Cannot load extension with file or directory name
_metadata. Filenames starting with "_" are reserved for use by the system.'.
You can see this error if you try to install this extension on an older version of Chrome: https://chrome.google.com/webstore/detail/allcast-receiver/hjbljnpdahefgnopeohlaeohgkiidnoe
A good explanation: https://groups.google.com/a/chromium.org/d/msg/chromium-apps/huDqSeaQx3Q/Z5GOMxA7lQIJ
Is there a workaround for this? This makes it impossible to support older versions of Chrome.
You can try to unzip the CRX (change the suffix name to ".zip" if needed) and then in chrome: Settings -> Extensions check "Developer mode", choose "load unpacked extension.." and select the extracted folder.
P.S.
I had to rename the folders starting with "_" (underscore) and remove the line
"default_locale":"en",
from the manifest JSON in order for that to work
You -as an extension developer- cannot work-around this bug, because the directory is added by the Chrome Web Store (CWS). You could work-around the bug by not using the CWS to distribute the extension, but then the extension cannot be used by the majority of Chrome users, because Google has actively tried to stop users from getting extensions from outside the CWS.
The CWS team are the only ones who can fix the bug. They should serve crx files without a _metadata directory if the user agent does not support the directory (Chrome 30-). This bug is being tracked on https://code.google.com/p/chromium/issues/detail?id=377278. So far, the response is:
We can't fix old versions of Chrome. Webstore side tracked at b/15176392, but extending support back to Chrome 30 is unlikely.
Star the issue to get notified of updates and to signal that you really want the bug to be fixed. If enough users/developers complain, then Google might fix the bug.
This answer applies to CRX files that you:
Downloaded from Chrome Web Store
Are trying to load unpacked
_locales folder should not pose problems. As long as the manifest contains default_locale key, Chrome will load the unpacked extension as expected.
_metadata is the problematic folder. It contains cryptographic hashes of all extension files to protect against tampering with those files, and is automatically added by CWS. This does not make sense in the context of an unpacked extension, and has no other use, so this folder simply needs to be deleted.
Some people found resetting works. Some found emptying the recycle bin works. None worked for me. I re-installed chrome also didn't work.
Instead this worked for me (same as what Xan said): I download the .crx file, unzip it, erase the folder
_metadata
Then install it manually. This worked for me.
I'm running into an issue with my Chrome extension on OSX computers only. It used to work fine, but with my latest release, I have a lot of files that I organized into folders (css, js, and img). The extension installs just fine on Windows computers (which is the OS I created the extension on, Windows 7) but when I attempt to install on a Mac I get the message outlined below:
"Package is invalid. Details: 'Could not load extension icon 'img\icon_16.png'.'.
I know the image is there, but my guess is that because I did this on Windows, OSX doesn't like the pathing options. Any ideas how I can rectify this and still keep the folder organization?
Late, I'm aware, but the solution to this was the slash in img\, reversed it and it worked fine.
In my case the problem was that Google Play allows zip with .crx file.
So on first attempt it said me to zip my crx (after crx upload try), then it said that it needs manifest file inside the zip file.
After that everything was fine except of extension installation - it threw out error like "Could not load extension icon".
So the solution is to compress src directory (in which manifest file lays) without packing extension into crx.
I am using HTML 5 Geolocations API's for tracking location however I am getting the following error on the Geolocation icon in Chrome Browser
"This Page has been blocked from tracking your Location"
I went to the Preferences and Setting's Page but did not find any help.
In my case the problem was that I opened the HTML file from the file system (file:///...). Browsers generally try to prevent accessing personal information (which includes location) from local files, so you have to serve the file through a web server (even if it is local).
One simple way to serve a static website located in your filesystem is SimpleHTTPServer if you have Python installed. Just navigate to the folder using the command prompt, and say python -m SimpleHTTPServer, and then you can view the file on localhost:8000.
Even I was facing the same problem. One of the solution is to open to file in another browser, I tried in Firefox and it worked fine. Another solution is to open the file through your WAMP server (Local host).
There is a good article here about Geolocation API. You have to go to chrome://settings/content and there, you can find Location information. You should be able to find the exceptions and manage them there.