Providing expansion content to Android apps
I plan on providing a free app in the Android Market with some sample content from various "expansion" content packages that I intend to sell separately. These expansions would contain no executable code, just additional static data like sounds and images.
I've researched this a bit trying to see how this could be done. I've come up with a few different possibilities:
1) Separate stand-alone app per expansion: Each stand-alone app would contain that expansion's content and would require nothing else to be installed. Though this would work for some applications, I'm not really considering this as a solution because I ultimately want an app where if the user has purchased multiple expansion packs, they can browse through all of them in-app.
2) Selling a "data only" app: I've seen a few apps actually do this. You purchase and install an expansion "app" from the Android Market that installs no application at all (i.e. - it's not displ开发者_开发技巧ayed on your Application list). Somehow the actual app finds the expansion data and uses it. I'd like to find an example of how to do this exactly.
3) In-app Purchase: I know that Android provides an In-app Purchase API, but I'm not sure exactly how this would work. I assume that if I went this route I would have to provide the content myself on my own web server or something. This seems both very cool and a big pain to do.
So, my question is, what is the best way to do this? Are there any pros/cons of each method that I've missed? Are there any other methods that I've missed completely?
Regarding option 2: the two main ideas are:
- Don't define an intent filter for android.intent.action.MAIN, so you don't get displayed
- Use a Content Provider to pass data between main app and expansion apps
精彩评论