A week after releasing the stable version of Chrome 41, Google released Chrome 42 beta for Windows, Mac, Linux, and Android. While the new version actually arrived on Monday, the company today offered details about the new features, including push notifications, ES6 Classes, and Add to Home Screen promotion on Android.
Chrome is arguably more than a browser: With hundreds of millions of users, it’s a major platform that Web developers have to consider. In fact, with regular additions and changes, they have to keep up to ensure they are taking advantage of everything available. While Chrome 42 is supposed to be a “performance-focused build,” according to a Google Groups posting that states many Chrome component teams have made performance improvements a priority for this release, it also includes many new features worth outlining.
Chrome 42 beta offers two new APIs (Push API and Notifications API) that together allow sites to push native notifications to their users even after the given page is closed. That may sound intrusive, but Google says the user has to grant explicit permission for this to be possible.
While Chrome 32 introduced the ability for Android users to add home screen shortcuts to their favorite websites via a menu item, Chrome 42 beta takes the functionality a step further by offering a banner. Users who frequently visit a high-quality web app will be asked if they want to add the site to their home screen in one tap:
If you’re a developer who wants to take advantage of this new feature, you have to meet the eligibility criteria (provide a Web App Manifest, serve all content using HTTPS, and at least partially work offline using a service worker), which will evolve over time based on feedback from users and developers. Google wants to ensure users have a good experience when launching sites from the Android home screen, including when they’re offline. More information about these “app install banners” is available here.
Other developer additions include:
- DevTools now allows developers to visually edit cubic beziers directly from the styles pane, making it easier to understand and modify animations.
- The Fetch API is now available in the window context, shared workers, and dedicated workers, providing a new promise-based standard for AJAX requests.
- The startRendering method of an OfflineAudioContext instance now returns a promise that resolves when the audio has finished rendering, making it easier to design web apps that work with the Web Audio API.
- AudioBufferSourceNode.buffer can no longer be set more than once, protecting developers from the lack of control over when the new source starts.
- Chrome OS now supports screen.orientation and fires the DeviceOrientationEvent when the device’s orientation changes significantly, allowing orientation-aware websites to operate correctly on Chrome OS devices.
- This release includes an updated and unprefixed implementation of Encrypted Media Extensions, which allows media sites to discover and interact with digital rights management systems.
- A new content setting allows users to automatically pause non-primary plugin content to save power. Developers can turn it on to test how it interacts with their content.
Google releases new versions of Chrome every six weeks or so. We thus expect Chrome 42 stable, which will be the last version to support Android 4.0 Ice Cream Sandwich, to arrive at the end of April.