Загрузка файлов в папку внутри приложения Android - PullRequest
1 голос
/ 18 января 2012

Извините, если этот вопрос задавался много раз, Но я хочу сохранить некоторые файлы внутри моего приложения, я попытался поместить их в папку Raw, хорошо, это работает, я могу загрузить их, когда захочу, Но я могу изменить их во время выполнения ?? я могу загрузить новые файлы и поместить их в папку Raw?

Я хочу сделать это, потому что, если я положу их на SD-карту ... пользователь сможет видеть их без приложения, и я не хочу, чтобы это произошло ..

Внутренняя память тоже не вариант,

Я также использовал этот путь ... но файлы можно увидеть

  directory = new File (Environment.getExternalStorageDirectory().toString()  +"/data/"+getPackageName()+"/files"); 

directory.mkdirs();


if(DeleteFlag!=1 || !downloadTask.isCancelled()){

file1 = new File(directory, audioFileName); 

output = new FileOutputStream(file1);

byte data[] = new byte[1024];

long total = 0;

    while ((count = input.read(data)) != -1) { 
        total += count;
        publishProgress(""+(int)((total*100)/lenghtOfFile));
        output.write(data, 0, count);
    }
    }

1 Ответ

2 голосов
/ 18 января 2012

Но могу ли я изменить их во время выполнения ?? я могу загрузить новые файлы и поместить их в папку Raw?

Нет. Ресурсы доступны только для чтения во время выполнения. Пожалуйста, сохраняйте загруженный материал во внутреннем хранилище (например, getFilesDir() или во внешнем хранилище (например, getExternalFilesDir()).

Я хочу сделать это, потому что, если я положу их на SD-карту ... пользователь сможет видеть их без приложения, и я не хочу, чтобы это произошло ..

Они могут видеть все без приложения. Они могут видеть ваши сырые ресурсы без приложения. Если они рутируют свое устройство, они могут видеть все, что хотят, без приложения. Если у вас есть данные, к которым у пользователей нет доступа, сохраните их в Интернете и оставьте там.

Конечно, пользователи, как правило, предпочитают приложения, которые не тратят пропускную способность и не пытаются скрыть от них данные.

...