Multi-device .ipks now enabled for developers; one app for phones and TouchPads alike | webOS Nation
 
 

Multi-device .ipks now enabled for developers; one app for phones and TouchPads alike 18

by Jonathan I Ezor#IM Fri, 08 Jul 2011 2:38 pm EDT

With the ability (as of webOS 3.0) to share a single Palm Profile across multiple webOS devices, users with both a webOS smartphone and a TouchPad are facing new choices regarding app purchases. Yes, the already-purchased apps from the phone will download for free to a new TouchPad using the same Palm Profile, but after that, which version of new apps should they buy? An app meant just for the TouchPad won't run on smaller form factors, while a phone-formatted app will run (if at all) in an awkward emulator window on the TouchPad's larger screen. The alternative, buying both, may not be desireable or economically feasible.

Enter the multi-device .ipk, a new developer app packaging option that was recently revealed (and taken out of its NDA status) by the webOS Developer Program. While developers may still create and provide/sell separate versions of their apps for phones and tablets, this new option enables devs to write both types of app but package them together in a single .ipk (the file format for webOS apps) in the App Catalog. When a user buys (or selects, if free) an app packaged in this new way, the device-correct version will be downloaded and installed automatically.

Apps packaged in this way will soon appear in the App Catalog (if they haven't already), as developers take advantage of this new functionality. In the future, though, the move to the Enyo development environment for all webOS devices, including built-in scaling and other device-detection features, will make this less of any issue. For now, at least, owners of webOS phones who also purchase TouchPads will increasingly discover that (to paraphrase Tolkien) one app will run on them all.

Category:

18 Comments

Bravo. Bravo. Exactly what we need to get developers going. I am very satisfied with HP's progress.

Nah, this just gives developers who already got going the option of supporting "legacy" device users, where before those users would be left behind or have to pay for the app again.

Not really progress IMO. Allowing Enyo on webOS 2.x... Now THAT would be progress.

Sorry, but that is an awful Photoshop/GIMP job.

This has already been available for a while. My app, Postie (http://developer.palm.com/appredirect/?packageid=ie.danielbrierton.postie), has had both phone and TouchPad support since shortly after TouchPad launch

Yes, yes it is an awful GiMP job. Damnit, Jim, I'm a writer, not an illustrator! :) {Jonathan}

That's pretty darn cool. But won't that increase the download size of the app?

Yep, you have to sacrifice app size to support both platforms.

As a developer I can't recall allowing an app to be used on more than one device at a given time...traditionally every copy of an app is licensed to work on one device at any given time... And packing two apps as one? Sales are already minimal comparing to other platforms and now this? While this is amazing for the users, this is a negative growth for devs sales... I have no idea where HP is going with these decisions....

Yep, what would be better for me is allowing Enyo on 2.x.

The developer chooses whether to make it the same app or not. Some developers want customers to have a smooth free migration from one device to another. Other developers want to force two sales. This scheme allows for both, and it's the developer's choice.

-- Rod

Hold on a minute, an app meant for the Touchpad won't run on smaller form-factors? Isn't this EXACTLY the kind of problem Enyo was supposed to resolve?

And therein lies the problem. For the moment, HP is fine with locking down Enyo to webOS 3.0. To them, Chrome and Safari aren't other potential platforms Enyo developers can target, they're just development tools. If you try an Enyo app on your phone and it doesn't look right (provided you have Enyo on your phone), it's because the app developer was using Enyo wrong. They probably will continue to use Enyo wrong until HP decides to stop it with the narrow vision and opens up Enyo to web development and webOS 2.x development.

This is OK as a quick band-aid, but which version of the app do you think developers will prioritise: the one running on the abandoned framework or the one running on the new, (supposed) device and resolution independent framework?

I was wondering your opinion on something. Do you think they should allow Enyo on 2.x?

Yes.

Thanks. I wasn't expecting that answer.

You're welcome.

Just because enyo can run on smaller form factors, doesn't mean that you want to develop the app to behave the same way. As a web developer I can control the size and behavior of a web page according to the resolution of the screen. Allowing me to give a good user experience for people who have a 1920 x 1080 as well as giving an equally good, although sized differently and more appropriately, user experience for people who have a 800 x 600 resolution.

In enyo speak, maybe the panes works well on the touchpad, but there may not be enough room for the panes to work on say a veer. I would want to develop my application with different ways to navigate between the two.

I think panes would work great. On the Touchpad, you have the screen real-estate to display all available panes at the same time. However, most panes are designed with little handles allowing you to open and close the panes. On a smaller form factor, one pane at a time would be visible, and you would drag open, or the app would programmatically open, panes depending on what you want to do with the app.

And we're not talking about web pages here. Web pages are from the 2000's. Nowadays we have web apps, an important difference.

"When a user buys (or selects, if free) an app packaged in this new way, the device-correct version will be downloaded and installed automatically."

That's not how it works. The .ipk contains both the Mojo and Enyo code, and the app selects the proper version to run at launch time.

This is not simply for making an app that runs on all platforms, but for making an app that Enyo when possible, and Mojo otherwise. As others noted above, it was already possible to make Mojo apps run on all devices at once, and the same for straight PDK apps.