Android Market Manager Update – Fixes for Google Play, Amazon Appstore, and BlackBerry Appworld

Android Market ManagerIf you’re using the Android Market Manager library to simplify your app linking on your various app markets (such as the Amazon Appstore, Google Play, etc), then it’s time to grab an update. I just fixed several bugs, affecting the ability to show all of your apps for Google Play, the Amazon Appstore, and BlackBerry Appworld.

I’m not sure exactly when each of these app stores changed.  At some point, linking to ‘all apps by this developer’ became hit-or-miss in some of my apps and I made a note to investigate further.  This update is long overdue!

What is the Android Market Manager?

If you aren’t already using the Android Market Manager, it’s a small library project to help simplify handling your Android app on multiple app stores.  In particular (links go to some blog posts I’ve made on these app stores, such as a review):

Using the Android Market Manager, you can simplify code required to link to either a single app (such as from a free to a paid upgrade app) or to all of your apps, so users can find more apps when they like the one they are using.

The sample project is also very useful to test how app markets will operate on your device, which helps what happens, for example with:

  • Links to one store when both Google Play and Amazon Appstore are installed
  • Links to an app store that isn’t installed (common with Google Play apps distributed unmodified on another app store)

There is a surprising amount of differences between linking for each of the app stores, so I open sourced this library to save other developers from having to do all of the same research to get app linking working.

Changes

Google Play “show all” was using a precise search term, but at some point other apps started creeping in. That’s no good!  There’s another search method to search by publisher, and for some reason it works differently for the HTTP:// and market:// URLs.  I fixed this, and all looks well.

In addition, the Amazon Appstore “show all” broke. This relied on searching for the Amazon developer ID, which is no longer found.  For some reason this still works with the HTTP URL, but not the amzn:// URL.

This works in a browser:

http://www.amazon.com/gp/mas/dl/android?s=Simplify%20Now%2C%20LLC

This does not work in an app (but used to):

amzn://apps/android?s=Simplify%20Now%2C%20LLC

Searching by package name and adding ‘showall’ to the end still works. So, in AMMLinks::marketShowAll I’m changing the amazonDeveloperID input name to amazonPackageID, which should now be the package name of any app you have released to the Amazon Appstore.  Update your code!

NOTE: if your app is unreleased, Amazon won’t find your other apps because it doesn’t know about your new package name (it is not a search based on the name itself, but by the developer account associated with that package name).

BlackBerry Appworld

Last year, BlackBerry Appworld started to show a mountain of garbage for the same searches that worked before.

Luckily, it turns out that the appworld:// URLs were fixed, so the ‘find all’ functionality now uses the original linking, and returns just the apps by the specified developer.

Even more details

The constants file for AMM contains a lot of (I hope) well documented information on linking and device names for the major Android app stores.

Even if you aren’t going to use this library, take a look to understand how the various app stores handle linking (and find links to the reference material).

Get going

The changes are all pushed up to AMM on GitHub, so get them now.

If you see anything still broken, or know of a better way to do any of these links, let me know.  If you find the library useful, let me know too!

Posted in Android Markets permalink

About ProjectJourneyman

I am a software engineer that escaped the cubicle world at a large company to go solo with Android app development. My attention to detail and quality applies both to my apps and to my research on how to make money with Android. Now that I have the freedom to work on my own projects, I am documenting my efforts in the hopes that it will help other current or aspiring independent Android developers get the income they desire.

Comments are closed.