Question

I am having some trouble with my application.

I wanted to download the files and then save them into my apps drawable folder, but since that is not an option because app is read only, I want to save the downloaded file into internal storage so that only my app can access them.
If I cannot directly download the file to internal storage, can I read from downloads folder and then save it to internal storage?

Either way, I have the download method, I just need to know where to save the downloaded file and how to access it at runtime and persistently store it in internal storage.

Was it helpful?

Solution

Try having a look at

_context.getFilesDir();

and

_context.getExternalFilesDir();

OTHER TIPS

/** * Copies a private raw resource content to a publicly readable * file such that the latter can be shared with other applications. */

private void copyPrivateRawResourceToPubliclyAccessibleFile() {
    InputStream inputStream = null;
    FileOutputStream outputStream = null;
    try {
        inputStream = getResources().openRawResource(R.raw.robot);
        outputStream = openFileOutput(SHARED_FILE_NAME,
                Context.MODE_WORLD_READABLE | Context.MODE_APPEND);
        byte[] buffer = new byte[1024];
        int length = 0;
        try {
            while ((length = inputStream.read(buffer)) > 0){
                outputStream.write(buffer, 0, length);
            }
        } catch (IOException ioe) {
            /* ignore */
        }
    } catch (FileNotFoundException fnfe) {
        /* ignore */
    } finally {
        try {
            inputStream.close();
        } catch (IOException ioe) {
           /* ignore */
        }
        try {
            outputStream.close();
        } catch (IOException ioe) {
           /* ignore */
        }
    }
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top