Release schedule of chrome.infobars Chrome Toolbar

2020-04-08 12:22发布

I don't understand the status of the toolbar API in Chrome.

According to a 2013-06-24 answer to How to make a toolbar in Google Chrome?, there was a chrome.experimental.infobars API available in Chrome, and which was ready to become non-experimental.

However, if I go to the referenced web-page for the API, https://developer.chrome.com/extensions/experimental.infobars.html, there's a 302 Found redirect to remove the experimental. part from the URL, and the API is not (/no longer) documented as being accessible under experimental, but it is said to only be available in the dev builds (Availability: Dev channel only.), http://archive.is/yydlD. What does this all mean?

  • Is it now always available only in dev builds, or is it simply a matter of it being moved to non-experimental, with the upcoming stable release, hence being in dev now?

  • If I want to develop a toolbar, can I still use chrome.experimental.infobars and regular stable Chrome? Will this continue to work after the code from dev moves into stable?

  • Will there be a [stable] build or two where it's available as both chrome.exprimental.infobars and chrome.infobars, to allow me some time to update my extension?

1条回答
神经病院院长
2楼-- · 2020-04-08 13:19

Update (February 2015): The chrome.infobars API will be removed from Chrome in the future (Chrome 42?).


  1. chrome.infobars was designed in 2008, but it is only enabled on Developer builds and Canary only. It's not clear whether it will ever reach the stable channel, see Issue 39511: Launch Extension Infobars? for more information.
  2. chrome.experimental.infobars should no longer be used. It has been removed since Chrome 30. Use chrome.infobars instead.
  3. You cannot upload extensions with the "experimental" permission to the Chrome Web Store, so don't worry about breaking compatibility. The extensions being experimental means that their API can change without notice, or completely be removed. Provided that the API does not change, you can use a compatibility layer like like this:

    if (!chrome.infobars && chrome.experimental && chrome.experimental.infobars) {
        chrome.infobars = chrome.experimental.infobars;
    }
    
查看更多
登录 后发表回答