Google recently announced a new initiative that allows for the streaming of native apps directly to a device, without actually installing them in the device. The apps run on a virtual machine from its cloud platform, and the user interface is streamed in real time to the mobile device.
This is triggered from within the search results from Google and serves as an attempt to index the information resident inside native apps. They’re doing this keeps control on the provided content so that they can leverage their main revenue channel — ads.
This might sound as something completely novel and experimental, but Microsoft is also working on this kind of solution. So, more than just a curiosity, this announcement should be understood as a possible glimpse to the future, which raise a few questions, like what is the future of mobile apps.
One realization for this future to become real is that connection speeds need to be high and widely available. But, as we could expect, Google is not leaving it to chance and is actively working on several improvements. One of the most successful ones is the SPDY protocol, which gave rise to the new standard protocol HTTP2, currently being rolled out, and which promises speed increases of 50%.
So Google is making sure that the future of content remains as close to the web as possible.
There a couple other things that become apparent with this approach:
- It doesn’t really matter which technology the app is running on — native or web, using React for example — as the interface is streamed.
- Apps might actually run better in older, less capable, devices.
The part that’s not being solved is the integration with the device native functionality like access to camera or sensors. This could be done by leveraging Google’s own native app shell to serve as interface to the device.
This is very close to the hybrid approach to build mobile apps, as we’re using in OutSystems. They’re built using web technologies, getting the associated development speed and ease of maintenance leveraging device functionality through a native shell, interfaced by a framework like Cordova.
One of the difficulties with the hybrid approach lies in older devices, with less processing power, which have a bit more trouble handling the rendering needs for the web pages. By pushing this processing need to a VM in the cloud, this approach could actually mitigate a common challenge.
In a world where apps are streamed to devices, and connection speeds are fast and plenty, in what kind of technology should we be building our apps? Natively for every platform or through open web technologies, created by regular web developers?
Gonçalo Veiga — Having gone through dozens of software development projects, Gonçalo has specialized in how to create amazing digital experiences, particularly in the mobile world, and figuring out how this could be done by anyone, anywhere, at never-before-seen speed.