Я использую следующий плагин для сборки телефонного разговора:

com.chanthu.evri.gcs-file-transfer version = "1.0.0"

Для загрузки изображений на устройства. Загрузка выполняется нормально, но изображения видны в стандартной папке myApp галереи пользователя. Как сохранить изображения без создания такой галереи?

Путь, который я использую для их сохранения:

cdvfile: // локальный / постоянный / myApp /

Путь на устройстве Android станет:

/ хранилище / sdcard0 / myApp /

2
Riccardo 27 Фев 2015 в 19:32

3 ответа

Лучший ответ

Вам необходимо создать файл .nomedia и поместить его в папку myApp, используя приведенный ниже код.

  try
    {
        File dir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/myApp");
        if(!dir.exists())
        {
            dir.mkdirs();
            String filenameForNoMedia4 = Environment.getExternalStorageDirectory().getAbsolutePath()+".nomedia";
            FileOutputStream outForNoMedia4 = new FileOutputStream(filenameForNoMedia4);

        }
    }
    catch (Exception e)
    {

    }

Но для этого вам нужно добавить разрешение к файлу androidManifest.xml

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
2
Pooja 27 Фев 2015 в 18:39

Создайте файл .nomedia и поместите его в папку, в которой вы храните изображения.

Этот файл скрывает папку и ее возраст от отображения в галерее.

1
Fahim 27 Фев 2015 в 16:40

Android - это Linux, поэтому все, что работает для скрытия файлов и папок в Linux, работает и на Android.

Если вы хотите скрыть все данные в папке, просто добавьте в эту папку файл .nomedia. Если, однако, вы хотите скрыть определенный файл, просто добавьте к его имени ..

FOLDER 1 
|
-- .file1.txt
-- file2.txt
-- FOLDER 2
   |
   -- .nomedia
   -- file3.txt
   -- file4.txt  

В приведенном выше сценарии все содержимое под FOLDER 2 скрыто, и только file1 из FOLDER 1 скрыто.

2
An SO User 27 Фев 2015 в 19:16