Getting the version number of your own Chrome Extension

Following on from yesterday’s post about getting the version number of your own firefox extension, what if you were now developing a Google Chrome extension and want the same thing? Google Chrome’s extension API is much more limited that Firefox’s. There’s no explicit extension-metadata-getting API that I know of. However, we do know that the version information is tucked away in manifest.json. With this knowledge and coupled with a few friendly APIs (XMLHttpRequest & JSON.parse) we can now have the equivalent function for chrome:

function getVersion(callback) {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.open('GET', 'manifest.json');
        xmlhttp.onload = function (e) {
            var manifest = JSON.parse(xmlhttp.responseText);
            callback(manifest.version);
        }
        xmlhttp.send(null);
}

// to use
var version;
getVersion(function (ver) { version = ver; });
// version is populated after an indeterminate amount of time

As XMLHttpRequest is asynchronous, our method needs a callback to receive the version information. You can also get whatever other information you want in your mainfest.json. So there you go.

Tags: ,

2 Responses to “Getting the version number of your own Chrome Extension”

  1. [...] Getting the version number of your own Chrome Extension Posted on August 12, 2011 by Eli Thompson http://siphon9.net/loune/2010/07/getting-the-version-number-of… [...]

  2. Liam Clarke says:

    Cheers for that, just looking into this, and was going the route of using the chrome.management API to iterate over the installed extensions, but your method does exactly what I want without yet another permission.

Leave a Reply