Sd Card Install

Is the apk that unity builds already setup to allow install onto sd card or do we need to do something manual?

Yes, the app has installLocation set to preferExternal by default, which will install it to the sdcard if supported by the OS (ie FroYo) as defined here

Have I mentioned lately how awesome you guys are?

However, remember that the ‘compiled native code’ (about 9megs for Unity) is always stored on the internal phone memory.

For reference, the N1 has less than 200mb of flash memory available to the user from what I have seen.

Unity could do something like Adobe did. As I know Adobe published the player as a separate application.
One player (internal memory), many applications (sd)

What is the process to load an external file (like a package, in example, containing maps and assets) into Unity?
Is it complex?
Is it possible to encrypt the package?

If so, the app could be sold as “light” and the “full” could be the substance with all the assets and maps.

yonek, we do this for webplayer and this approach is painful. We considered such approach for android but eventually decided to go with what we have now.

godlike, you can use asset bundles or build your own system

Is this 9MB shared between multiple different Unity apps, or each Unity app will always take up another 9MB of internal memory, regardless of SD? This apparently is becoming the most common complaint, especially among 2.1 users, that our app is using too much space at 23MB.

Hi guys just another point to add… If you upload your app with Google Market copy protection control, your users will not be able to sabe the app to the SD card

Ouch, thanks for pointing that out, I need to update our app then.

Yes, I’ve read that, and I wonder how can that be of any help… everybody will want to use that copy protection system so it will end up in madness.

Wasn’t it better to set up a transparent encription system that would only put a key on the phone, linked to the app on the SD card?
This should work perfectly using an infinitely small amount of data on the phone and allowing to store the app on the card.

Is there anyway I can verify this? Because when I install our app (BowQuest: PandaMania! Lite) from the store, it shows that its on the SD card and only shows how much memory its using on the SD Card at around 9MB? Or am I reading that wrong?

bump

Step A: check the size of the published .apk (the one you uploaded to Android Market)
Step B: move the app to the sdcard; note the size displayed under Manage Applications
Step C: move the app to the internal phone memory; again note the size displayed

A + B should equal C (approx.)

A represents what is moved to the sdcard. B represents the ‘compiled native code’ and java code. C represents the total memory consumed on the device.

B is usually around 9.3MB for Unity without any plugins. The reason B consumes internal phone memory regardless of moving the app to the sdcard is because of a limitation of the app-on-sdcard in Froyo. (Yes, we are looking into ways of solving that without having to wait for it to be fixed from Google’s side)

Hi,

I have my game built for android with unity 3.3.
I can’t get my binary installed in sdcard.

How do I enable that? Some others games built with unity manage to installed itself in sdcard.

the application data should be on the SD (given you have one).
But a part, the actual runtime code, will always be on the internal, thats an android requirement, nothing you can change. (the major part of it, the engine mono, it should only be there once though)

How would you do this exactly?