tags:

views:

53

answers:

2

I'm writing an android app that I am going to want to create more content for (specifically images). I want the user to be able to download some type of image pack that will be listed in the Market. Obviously this download will not really be a new application, just a set of data that the user can download.

Thanks.

A: 

You have a few options...

If your image-package-app is not forward locked, it's apk can probably be opened as a zip file and read by another application (though guessing the path name of the apk is theoretically not part of the platform guarantees, so probably discouraged). If it is forward locked, you might (just speculating) be able to do it anyway if you have a shared user ID between your main app and this, using the same certificate to sign both.

You could have an image package app that copies its contents to the sdcard, either plain or encrypted, and then deletes itself freeing up room on the phone internal storage. Don't waste too much time on security as a determined attacker will almost certainly be able to extract the files by finding the key in your primary application or making a modified android platform which records the plain data when you do something (display/play) them.

You can have an image package app that functions as a service to provide content to you main app.

You can have an image package app that functions as a service to provide content which the main app stores internally - but that's a bad idea because you then have two copies of your images taking up limited internal phone storage.

You could download the image package from your own web server to the sdcard - which is the best method - but doesn't sound like what you want to do.

Chris Stratton
A: 

Release your image packs as a separate application that implements a ContentProvider. ContentProviders are a means of sharing data/content across applications.

Benjamin Dobell