Dev Watch

Blog archive

Forget Downloads and App Stores: The Future Is Streaming

Here's an early 2017 prediction for you: the future of mobile app development lies in streaming, not the current, cumbersome system of app stores and downloads.

And guess what? It's already happening. Heavyweights such as Google and Apple have dipped their toes in the app streaming waters, and smaller companies such as Glu Mobile Inc. and 1APP have followed suit.

While their efforts vary in many ways, commonly cited benefits of app streaming include bypassing the app stores operated by Google and Apple (which, for obvious reasons, don't seem to be too keen on supplying totally streamed apps, but rather partially streamed apps). Mobile developers often decry the app store approval process, difficulty in getting their apps discovered by users, low revenue opportunities and other problems with the traditional store-based approach.

1APP is among the latest entrants into the new mobile tech space seeking to disrupt that traditional approach, having last week announced a new cloud-based OS that allows instant access to mobile apps without any downloading required.

The company's "manifesto" says in part:

While hardware has dramatically increased, and the app store economy had led to an initial Cambrian explosion of new types of software in the form of apps, the transmission of apps has been stuck in the dark ages.

Being tied to stores and downloaded software creates a situation where only the biggest app developers and platforms can succeed, and even then only with enormous amounts of marketing dollars. We started 1APP because we believe instant access of apps, delivered wherever and however users want it, is the next necessary phase of mobile, and will transform the ecosystem for app developers, platforms, device makers and carriers alike.

Under the hood, the new cloud OS is based on Android source code and leverages a proprietary Linux Kernel that enables Android to run natively on servers. The streamed apps can automatically tune the UI according to specific device capabilities and network conditions. The company said this can be accomplished as simply as changing one line of code.

The 1APP Approach
[Click on image for larger view.] The 1APP Approach (source: 1APP)

"By rendering an app as a simple weblink, apps can be instantly accessed, embedded or shared inside any Web-connected environment," the company said in a news release last week. "Existing apps can be uploaded to the 1APP cloud in a process that takes just a few minutes and makes these apps instantly available on any platform including iOS, Android, Windows and more. In addition to enabling instant access to apps, 1APP allows apps to be discovered and used in context during the natural course of a user's mobile activity, including being delivered and launched inside messaging and social apps, listed in search results or embedded as fully functional apps within other relevant apps."

This approach is akin to Google's Android Instant Apps, a preview of which was announced in May.

"It evolves Android apps to be able to run instantly, without requiring installation," Google said. "With Instant Apps, a tap on a URL can open right in an Android app, even if the user doesn't have that app installed.

"As a developer, you won't need to build a new, separate app. It's the same Android APIs, the same project, the same source code. You'll simply update your existing Android app to take advantage of Instant Apps functionality. In fact, it can take less than a day to get up and running for some developers, though the effort involved will vary depending on how your app is structured. You modularize your app, and Google Play downloads only the parts that are needed, on the fly. And when you do upgrade, your app will be available to more than a billion users on Android devices going back to Jelly Bean."

Note that Android Instant Apps don't replace traditional Android apps, and the preview technology has some limitations.

"Android Instant Apps functionality complements an existing Android app, but does not replace it," says a FAQ. "Android Instant Apps uses the same Android APIs, the same project, the same source code. Android Instant Apps restricts some features that might not match users' expectations of an app that is not installed. For example, an Instant App can't use background services, do background notifications, or access unique device identifiers."

Google's main competitor in the mobile space, Apple, also seems to be experimenting with the new approach, supplying dynamic content to traditional apps, though not supplanting them. With the introduction of iOS 9 at last year's developer conference, it introduced On Demand Resources.

"iOS 9 introduces On Demand Resources, enabling the efficient delivery of rich games and full featured applications using dynamically loaded content," Apple said at the time. "Significantly reduce the time between purchasing and running an app from the App Store, while also decreasing the required storage space by downloading and retaining only content that is necessary. Dive into the latest enhancements in app packaging and learn the APIs to allow your app to acquire only its essential resources."

According to its On-Demand Resources Essentials site, "On-demand resources are app contents that are hosted on the App Store and are separate from the related app bundle that you download. They enable smaller app bundles, faster downloads, and richer app content. The app requests sets of on-demand resources, and the operating system manages downloading and storage. The app uses the resources and then releases the request. After downloading, the resources may stay on the device through multiple launch cycles, making access even faster."

The dynamically provided resources can be any type of resource supported by bundles, excluding actual executable code.

Apple said its approach enables smaller app sizes, provides for lazy loading of app resources, and remotely stores rarely used resources and in-app purchase resources.

App streaming may be especially suitable for gaming apps, and Bloomberg earlier this month reported on game maker Glu Mobile Inc., which is experimenting with this technology.

The report says in part:

One of the problems is there are just too many apps, even within games, and that's made it harder for people to find ones that interest them, said Richard Au, a senior technical director of a Glu studio.

Streaming "presents the experience of your app without all the barriers; that really helps with discovery and brand awareness," Au said. The ability to tap into apps through social media also boosts engagement, he said. Friends or Twitter celebrities might invite users to join them in games by clicking on a link.

Of course, as the Bloomberg report says, connectivity is an issue with streaming apps. However, new technologies are continually boosting the offline capabilities of mobile apps, and those efforts are bound to advance further as app streaming takes hold.

It also remains to be seen how suitable app streaming is in the enterprise, where issues such as app store approval and discoverability aren't as pertinent.

However this burgeoning technology shakes out, it's bound to have a significant impact on many mobile developers and users.

"It is just not practical for users to keep downloading apps endlessly," Bloomberg quoted 451 Research analyst Castanon-Martinez as saying.

Posted by David Ramel on November 29, 2016