Android :: Setting Path To Assets Folder In Application?
Aug 10, 2010
I am developing an Android App and would like to have a video file (mp4) bundled inside the .apk so that when the app is launched I can play a short intro video. Unfortunately I'm having trouble figuring out where in my project folder I should place this video file, and also how to access it (the path to the file).
I am using videoView.setVideoPath();
How do I reference the assets from phone memory? I need it to write the absolute path into a html file to load some images which are in assets folderThis html is saved in the phone memory but I can't to save these images in the memory phone because these are very big.
I am trying to play a video in android emulator I have the video in my assets folder as well as the raw folder.But after doing some research still i cant play video in my emulator.i am working on android 2.1 My video format is mp4 so i don't think that should be a problem.Could anyone just give me an example code so that i can understand a bit more?The problem is that the VideoView that I need to display the Video will take only a URI or a File path to point to the Video.If I save the video in the raw or assets folder I can only get an input stream or a file descriptor and it seems nothing of that can be used to initialize the VideoView.
I am working on some a application where I have to update some files present in assets / raw folder runtime from some http location.Can anyone help me to by sharing how to write files in assets or raw folder programmatically?
Is the assets folder only accessible to the app or can the user see it too? For my app I want to store a credential certificate and video files on local storage but I am not sure how to hide these items from the users. The assets folder seems like the only choice.
The instructions for my app are in HTML format in my assets so I can display them with proper formatting and hyperlinks in a WebView. Given that they're in the assets folder, not res, I can't properly localize them (i.e. something like assets-de wouldn't work). What's the proper way to localize embedded HTML files?
I would like to install an APK from within an Android application. Can anyone give me an example of how to do this? Also how do I open the install applications from unknown resources preference page so that users can change it? I actually meant open the screen using code, so I can immediately open the preference page for the user to simply check the box, and press back. Is it possible to check to see if they allow non-market apps? Can an application request permission enough to do this?
I have 5 mp3 files stored on the assets folder. The files are all 25 KB. I load the files using: manager = context.getAssets(); this.inputStream = manager.openFd(fileName).createInputStream(); Whenever I try to play the files, the sounds are all messed up like they were mixed or something. I've zip aligned the app already but with no results.
What I am trying to do is simply copy over entire folder full of mp3 files onto sdcard within an app. I am doing this out of "assets" folder because raw folder does not allow mp3 files to be named the way I need them to. Here is what I dug up so far but not sure if this will work. I am lost.
InputStream ins = getResources().getAssets().open(""); int size = ins.available(); // Read the entire resource into a local byte buffer. byte buffer = new byte[size]; ins.read(buffer); ins.close(); FileOutputStream fos = new FileOutputStream("/sdcard/myfolder/"); fos.write(buffer); fos.close();
I want to change the font in my widget such that it uses a specific font in "assets" folder of my app. I usually do this in my app to change the font: Typeface tf= Typeface.createFromAsset(getAssets(), "advertising.ttf"); TextView converted = (TextView)findViewById(R.id.TextView03); converted.setTypeFace(tf);
And it works like a charm. How can I do this in widgets? I can only set the text and change the color: remoteView.setTextViewText(R.id.TextView03,"some text" ); remoteView.setTextColor(R.id.TextView03, Color.BLACK); But I don't see a way to set the font.
I have been working on creating a Grid View of images, with images being present in the Assets folder. http://stackoverflow.com/questions/1933015/opening-an-image-file-inside-the-assets-folder link helped me with using the bitmap to read it.My application does read the image from the Assets folder, but it is not iterating through the cells in the grid view. All the cells of the grid view have a same image picked from the set of images. Can anyone tell me how to iterate through the cells and still have different images?
It seems that the Android resource compiler does not take into account linked folders (in Eclipse sense) in the assets folder. Question - is there a way to forcibly designate a folder of my choice as Android project assets? Short of copying or hardlinking into project assets, I mean.
Question: How do you programmatically distinguish between directories and regular files in the assets folder?
When using AssetManager to access files in the assets folder, it seems impossible to determine if a file is in fact a file or a directory. You get the list of files from the list method and then open the file using the open method. I thought perhaps using the openFd method to get the asset file descriptor (and then subsequently requesting the normal file descriptor) would provide me some information. But requesting the file descriptor for a directory results in an IOException (which makes sense since what would it mean for a directory to have a file descriptor...?).
Currently I'm relying on that IOException (resulting from attemptng to open a directory in the assets folder) in order to determine if a file is in fact a directory. (Opening a regular file works just fine). This seems like a bad idea. Any other suggestions to distinguish between a file and a directory?
My app has .txt files in subdirectories in the assets folder. It reads those .txt files and puts them in a textview. It's working great and no problems.
Should I be concerned about the files in the assets folder getting deleted by the user or missing. If this ever could happen, my app would get an error because the file would not be there when it tried to read it into the stream.
Is there a need for me to check the existence of an asset file before I read it or does the asset manager take care of it all? I also was wondering if there's a chance that a user would or could delete and asset file.
Like I say, everything works fine without me inserting code to check for file existence. I just wondered if people use the .exists() statement every time they go to read in a stream from assets.
I'm going crazy, I created a file object, so it can be read with ObjectInputStream, and I placed the assets folder. The method works with a file smaller than 1M, and give error with larger files. I read that is a limit of Android platform, but I also know that can be "easily" avoided. Those who have downloaded the game Reging Thunder, for example, can easily see that in their assets folder is a file 18.9M large. This is my code ...
now I have an uncompressed file and I can use it without worrying about the error "This file can not be opened as a file descriptor; it is probably compressed"
This function works well with files smaller than 1M, with bigger files return an java.io.IOException on line "ObjectInputStream ois=new ObjectInputStream(is);"
I'm new in Java/Android programming, so please have patience with me.
I try to play a mp3 which is locate und the assets folder. I know there is another way with the /res/raw/ folder, but use the assets-folder because later I'll try to access the file by String.
This code works to play a mp3-file:
Now the problem: In the same assets-folder is another mp3 file stored. Though I specify the name of the mp3 to use it take the one which comes first in alphabet. E.g. the other file is named "music.mp3" it plays this one. Renaming it to "worldmusic.mp3" it will play "song.mp3". Rerename "worldmusic.mp3" back to "music.mp3" it will take this mp3 again. Another test: Renaming "song.mp3" to something other so the application can find whats specify by the code above will result that no song is played. So this means the songname have to exist, although it take arbitrary the song first in alphabet.
I'm testing with the AVD emulator of eclipse. But I think the behaviour would be the same on a real device.
the question i have is simple but hard to put in words, ill give it a try anyways.i am trying to load a web page in web view,however the load time is a little high.is there anyway i can put the images in the assets folder and load them from there instead?if not, is there a way i can load the whole site from the assets folder, providing that my php files can still communicate with my internet database?i have already read most tutorials however they are pretty vague when it comes to concrete help.
Does anyone know how to get the real filesystem path where the images are stored? I know that Using Media.EXTERNAL_CONTENT_URI thru a content provider you can get the pictures inside the folder and from there get the path. but if the pictures folder is empty, how I can get the full path?