Loading...
April 7, 2010#

HOWTO Circumvent Palm App Catalog Regional Filtering

This article is a short tutorial on how install WebOS applications on your Palm Pre independent of the region they are intended for, e.g. install US only apps that do not even show up in the app catalog outside the US on your French / German / Spanish Palm Pre. The process is rather simple as it basically just exploits the current behavior of the App Catalog’s update mechanism.

But before I get to the point, let me comment something that really bothers me: As of now, the US App Catalog shows about 2000 apps, while the German catalog is showing a mere 600, paid apps included. I understand, that given Palm’s app submission forms, it’s a bit of an inconvenience for developers to fill out the extra fields to make an app available outside the US, but from my own apps QR deCODEr and DIX Dictionary, I managed to collect a bit of statistics (which I also confirmed with other developers), looking as shown below:

imageWhile the numbers for Canada, Mexico, Great Britain and Spain are admittedly not too impressive, things look quite different when it comes to Germany. The US account for about 70% of all WebOS users, but 20% of all users come from Germany as the diagram suggests. Thus, those developers not willing to take an extra five minutes to fill out the forms to make their app available outside the US are basically alienating between 20 and 30% of potential users of their app. What I find most frustrating about this is, that I can’t understand why so many developers don’t care about this. Sure, it’s a bit of a hassle to fill out those extra forms since translating your app takes quite some time and effort, but then again, Palm doesn’t force you to do so. You are free to just copy over your English app descriptions into the German / Spanish / French forms. That’s about two minutes for each additional language. So to all of those lazy developers: Are you sure you don’t have an extra six minutes?! There really is more to this world than the United States!

But enough already, here we got with the install tutorial for apps submitted for other regions than your own.

HOWTO Install Apps Not Showing Up In The App Catalog For Your Region

I realize that this may seem quite some work to most ordinary users, but for somebody who’s used homebrew apps or the WebOS SDK before, it doesn’t take more than 5 minutes to follow the tutorial and install an app.

The basic idea is to exploit the App Catalog update mechanism’s current behavior. If you click a link to an app that’s not available in your region, instead of viewing this app, the app catalog presents you with an error message that this app is not available in your country. Nevertheless, if you already have an older version of such an app installed and go to the update view in the App Catalog, you’ll find that even for those app only available in other regions, you get a notification of available updates and upon tapping ‘install’ the App Catalog will happily download and install the new version of such an app.ç

So all we need to do is make WebOS think that we have an old version of the app we want already installed on our device and it will allow us to download and install the latest version. We do so by creating a “dummy” app with the same app ID as the app we want and a lower version number than the currently available version.

UPDATE: As an alternative to the following DIY tutorial, there are two apps that do all the work for you. See the end of this post for details.

  1. Make sure you have all the prerequisites: A text editor, the Palm WebOS SDK , your WebOS device with activated Dev Mode and Preware installed on your device (or some other way to find out app IDs).
  2. Create a new folder called Dummy somewhere on your hard disk.
  3. Within that folder, create a text file called appinfo.json
  4. Open this file in a text editor and copy the following lines to the file (including the brackets):

    {
    “id”: “FILL IN APP ID HERE”,
    “version”: “0.0.1″,
    “vendor”: “FILL IN VENDOR HERE”,
    “title”: “FILL IN TITLE HERE”,

    “type”: “web”,
    “main”: “index.html”
    }

  5. Fire up Preware and find the app you want to install, e.g. French Le Monde app as show below:
    preware_2010-07-04_150243
  6. Scroll down to see the vendor name, version number and app ID:
    preware_2010-07-04_150250
  7. Now edit the text file we just created and replace all ‘FILL IN … HERE’ entries with the data you see in Preware AND make sure the version number in the text file is LOWER than the version number you see in Preware (0.0.1 as version number should usually work fine).

    For our Le Monde example the text file should look like this:

    {
    “id”: “com.backelite.lemonde”,
    “version”: “0.0.1″,
    “vendor”: “Le Monde Interactif”,
    “title”: “Lemonde.fr”

    “type”: “web”,
    “main”: “index.html”,
    }

  8. Fire up the command line, go to the folder containing the Dummy folder and type the following to pack the dummy application:palm-package Dummy
  9. Now connect your device to your computer via the USB cable and type the following to install the dummy application to your device:palm-install –d usb com.backelite.lemonde_0.0.1_all.ipkYou should now see the dummy application on your device’s launcher page showing up with a default icon. (Don’t launch it, because it won’t start up at this point, since it’s just an empty dummy app.)

    preware_2010-07-04_150339

  10. Launch the App Catalog on your device and go to the update view, where you should see our dummy application showing up and an updated version being available:
    findapps_2010-07-04_145659 findapps_2010-07-04_150416
  11. Tap Install Updates and wait for your device to download and install the new version.
    findapps_2010-07-04_150423 findapps_2010-07-04_150432
  12. Congrats! You now have the full and latest version of an app installed on your device that is not available officially via the App Catalog in your country. You can now launch and use the app.
    lemonde_2010-07-04_150453
    In your launcher you may still see the old dummy icon for this app. The real icon will show up once you’ve restarted your phone.
    preware_2010-07-04_150339 Unknown_2010-07-04_151243

I’ve successfully tried this procedure with a dozen apps. It works only for FREE apps though. For paid apps, Palm is unfortunately / thankfully doing additional checks, so that you can’t just inject a dummy package to get a free update to the actual app ;)

 

One last thing: Since I’ve already done this procedure for quite a few apps, you can download my dummy app packages below and just install them to your device using WebOS Quick Install. This way you can skip the text file editing and command line packaging / installing and directly head to the App Catalog update page to get these apps.

Enjoy!

 

UPDATE

As Jason Robitaille points out here, his Ipk Packager tool may be more comfortable for creating dummy app packages than your regular text editor. Also, Blacklight was kind enough to update his Ipk Fetcher tool to completely automate the above method. Presented with a list of available apps, just select the one you want and hit ‘Generate IPK’ and it‘s done.

6 Comments

  1. Hi there,

    this method has been known for a while now, that’s why I have rewritten my tool IPK Fetcher a couple of weeks ago. I’m going to upload it very soon.

    But just a warning: last time Palm reacted very quickly (with the release of IPK Fetcher).. we shouldn’t be too loud about this. I don’t think Palm has a reason to break this method because only the official App Catalog is downloading the real applications, but you have been warned..

    http://www.nexave.de/forum/38588-ipk-fetcher-der-ipk-downloader.html (new version not uploaded YET)

    • I know about your little IPK fetcher tool. It’s the reason I own a backup copy of some of the EA games that were available for free throughout Europe till the end of march ;) Without it, I’d long have had to pay to redownload these apps since I just doctored my Pre yesterday.

      But this also explains why Palm had to react. The IPK fetcher tool did pose a much greater threat, allowing you to localy save apps on your computer, reinstall them even if they are no longer officially available via the app catalog or just unpack the IPK and have a look at the source of any app which, considering it’s all HTML, CSS and JS tends to be quite readable, etc. Palm obviously had to take care of this.

      As for the method I describe in my blog post, it really just allows you to bypass regional filtering and that only for free apps. It’s still Palm’s App Catalog app, that does the actual downloading to the encrypted file system, so there’s no (simple) way locally backup these apps or directly access the IPKs / source code within them.

      That said, I really hope that Palm decides to leave this “backdoor” open for a while, at least until they straighten out their app submission process and stuff to get the rest of the world on par with the US app catalog. I realize that based on the functionality of an app, copyright restrictions, etc. there are reasons why some apps should be limited to a certain region, but in the current state of the App Catalog, the main reason for an app to be US only is Palm’s complicated app submission form combined with the laziness of programmers with respect to filling out forms and the lack of appeal coming from Palm to encourage programmers to go that extra mile.

      Palm’s priority should be 1) fix the app submission process and imparity between regional app catalogs 2) close the loopholes, not the other way round.

      And above all, there are way bigger holes in Palm’s security measures to protect (to be) downloaded apps than the one I mentioned.

      • VERY nice comment :)

        Your are right, prior to this method the IPK was downloaded. Now, it all happens on the device, it’s actually not a really big threat. Lets hope Palm will let us have this little workaround until they fix the submission process or get rid of the geo-filtering once and for all. There’s actually a reason for this post and my tool *hint*

        So, I couldn’t agree more on your priority list for Palm. Until then, check back on the above link soon.

  2. IPK Fetcher is ok but much of the cool feeds are dead. http://www.fuzzypalm.blogspot.com for more games and apps

Leave a Reply to bravoast