Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java Мобильная разработка (Android)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.12.2018, 21:29   #1
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию Не сохраняет на SD карту

В манифесте прописано
Код:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Пытаюсь сохранить Bitmap на SD.
Код:
// Запись на SD
    public static boolean writeBitmapPNG(String file_name, Bitmap bitmap)
    {
        // Получаем путь к SD
        File sd_path = Environment.getExternalStorageDirectory();
        // добавляем свой каталог к пути
        sd_path = new File(sd_path.getAbsolutePath() + "/" + DIR_SD);
        // создаем каталог
        if(sd_path.mkdirs())
            Log.i("qwerty", "Директория создана");
        else
            Log.i("qwerty", "Директория НЕ создана");

        // формируем объект File, который содержит путь к файлу
        File sd_file = new File(sd_path, file_name + ".png");

        try
        {
            FileOutputStream fos = null;
            try
            {
                fos = new FileOutputStream(sd_file);
                bitmap.compress(Bitmap.CompressFormat.PNG, 100, fos);
                fos.flush();
            }
            finally
            {
                if (fos != null)
                    fos.close();
            }
        }
        catch (Exception e)
        {
            Log.e("qwerty", e.getMessage());
            e.printStackTrace();
            return false;
        }

        return true;
    }
Первая проблема, директория не создается
Код:
// создаем каталог
        if(sd_path.mkdirs())
            Log.i("qwerty", "Директория создана");
        else
            Log.i("qwerty", "Директория НЕ создана");
Ну да ладно, создал ее в total commander. Теперь лог выдает такую ошибку
/storage/emulated/0/my_app/test.png (Permission denied)
Тестирую на реальном устройстве, Android 7.0
SAMOUCHKA вне форума Ответить с цитированием
Старый 29.12.2018, 16:48   #2
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

Я забыл что нужно, еще, добавлять разрешения в настройках приложения.
Как это программно сделать, написано например, здесь: https://startandroid.ru/ru/blog/508-...rmissions.html
SAMOUCHKA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не сохраняет куки megostudent Работа с сетью в Delphi 3 13.07.2013 21:51
Не работает.не сохраняет lukjanchuks БД в Delphi 1 23.11.2012 00:59
Не сохраняет сессию Abuhamed PHP 3 09.04.2012 15:51
не сохраняет SaveAs Bezdar Microsoft Office Excel 1 12.08.2010 16:42