- Home /
How can I get the full path of an asset on Android?
I have a Unity project which I am deploying to Android. In addition, I have 6 sets of texture assets, each having a version of a texture for specific screen sizes. The textures are being loaded in to Unity and used in the project as Sprites.
So for example, I have scene(s) with 2D sprites using textures for the default size. When the scene loads, I would like to replace them with the version that corresponds to the device Screen dimensions. My directory structure is something like:
Sprites/600 x 1024/SpritesA/MySprite.
There are also other subdirectories in the size specific folder (SpritesB, SptritesC etc.)
Using the editor, I am able to query the path of the default sprite to get the directory (and sub-directories) that it resides in. For example, using AssetDatabase.GetAssetPath(), I know that MySprite has the path: Sprites/600 x 1024/SpritesA/.
Using the this string, I can do some manipulation to get the path which corresponds to the desired screen size, e.g. - Sprites/640 x 960/SpritesA/
However, since I need to deploy to an Android device, I can't use AssetDatabase, since this is specific to the editor. How can I do this query on Android? The important part is getting /SpritesA/ since I can build the size directory using dimensions, and the file names match up exactly.
Answer by robertbu · Oct 04, 2014 at 08:24 PM
Use Resources.Load() rather than trying to figure out absolute paths. The paths you are trying to get don't exist in a build.
Your answer
Follow this Question
Related Questions
(Android) Where are volume keys mapped 1 Answer
differentiating various android devices into low/medium/high settings 0 Answers
Sometimes terrain textures turn black on android device 0 Answers
How to localization app name on android platform 1 Answer
How to run unity app like a "live wallpaper" on android? 0 Answers