Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
dentical12
4 / 4 / 1
Регистрация: 01.03.2015
Сообщений: 111
Записей в блоге: 1
#1

Не пишет на диск - Программирование Android

31.03.2016, 16:34. Просмотров 235. Ответов 7
Метки нет (Все метки)

Я пытаюсь записать настройки в файл но вылетает exception! Файл: /data/data/com.nekitsgames.lightcontrol/files/options.json (это папка моего приложения)
Ошибка (IOException) :
Кликните здесь для просмотра всего текста
/data/data/com.nekitsgames.lightcontrol/files/options.json: open failed: EACCES (Permission denied)

Код:
Java
1
2
           ObjectMapper mapper = new ObjectMapper(); //Из библиотеки jackson, он а преобразовывает класс в json объект и сохраняет в файл
           mapper.writeValue(new File(fileName), optionsJsonData);
В манифесте разрешения прописаны:
Кликните здесь для просмотра всего текста
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

Тестировал (не работает) на Nexus 5 (Android 5.1.1). Помогите кто знает! В android новичок!
http://www.cyberforum.ru/hdd/thread1028037.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2016, 16:34
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Не пишет на диск (Программирование Android):

Жесткий диск не виден в Bios'e на ноутбуке HP g6-2128sr, при установке Windows 7/8 пишет, не удалось найти жесткий диск
Всем доброго времени суток. Очень нуждаюсь в помощи с ноутбуком HP Pavilion...

Помогите идиоту: Привод не видит вставленный диск, пишет "вставить диск"
WinXP. Привод в диспетчере устройств отображается. Винда пишет, что устройство...

Я уронил свой внешний жёсткий диск. После того как подключил его к компу пишет "форматировать диск"
Помогите мне пожалуйста! Я уронил свой внешний жёсткий диск. После того как...

Диск защищен от записи, пишет что диск оффлайн, что делать?
у меня проблема с ЖД, до этого работал нормально, но! потом перестал...

При закачке игры на жесткий диск пишет "Ошибка при записи на диск"
БЕДА В СЕМЬЕ! В системе 2 жестких диска: первый - 250гб(разбит на 2 раздела),...

7
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
31.03.2016, 16:58 #2
dentical12, как путь к файлу формируете?
0
fraley
110 / 110 / 43
Регистрация: 24.05.2015
Сообщений: 329
31.03.2016, 17:02 #3
А если так попробовать?
Java
1
mapper.writeValue(new File(getFileDir(), fileName), optionsJsonData);
P.S. На всякий случай, для getFileDir() нужен Context.
0
dentical12
4 / 4 / 1
Регистрация: 01.03.2015
Сообщений: 111
Записей в блоге: 1
31.03.2016, 17:18  [ТС] #4
Цитата Сообщение от fraley Посмотреть сообщение
А если так попробовать?
Java(TM) 2 Platform Standard Edition 5.0Выделить код
1
mapper.writeValue(new File(getFileDir(), fileName), optionsJsonData);
P.S. На всякий случай, для getFileDir() нужен Context.
Этот код у меня не в activity а в другом классе, там нет getFileDir()
Цитата Сообщение от YuraAAA Посмотреть сообщение
dentical12, как путь к файлу формируете?
Переменная
Java
1
private static final String fileName = "/data/data/com.nekitsgames.lightcontrol/files/options.json";
Добавлено через 6 минут
на android 6.0 вроде все норм
0
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
31.03.2016, 17:58 #5
dentical12, не не, так нельзя. getExternalCacheDir(), например, надо вызывать.
0
dentical12
4 / 4 / 1
Регистрация: 01.03.2015
Сообщений: 111
Записей в блоге: 1
31.03.2016, 18:08  [ТС] #6
Цитата Сообщение от YuraAAA Посмотреть сообщение
dentical12, не не, так нельзя. getExternalCacheDir(), например, надо вызывать.
Я попробовал использовать getFilesDir(), та же ошибка
0
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
31.03.2016, 18:15 #7
Лучший ответ Сообщение было отмечено dentical12 как решение

Решение

dentical12,
Java
1
.writeValue(new File(context.getExternalCacheDir(), "options.json"), optionsJsonData)?
1
dentical12
4 / 4 / 1
Регистрация: 01.03.2015
Сообщений: 111
Записей в блоге: 1
31.03.2016, 18:21  [ТС] #8
Цитата Сообщение от YuraAAA Посмотреть сообщение
dentical12,
Java(TM) 2 Platform Standard Edition 5.0Выделить код
1
.writeValue(new File(context.getExternalCacheDir(), "options.json"), optionsJsonData)?
Спасибо!
0
31.03.2016, 18:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2016, 18:21
Привет! Вот еще темы с решениями:

При закачке игры на жесткий диск пишет "Ошибка при записи на диск"
В системе 2 жестких диска. Так вот, при попытке установить на жесткий диск...

В компе дисковод показывает, что там есть диск (на нём игра, открываются все папки), хотя его там нет! Другие диски не видит. Пишет "Вставьте диск"
В компе дисковод показывает, что там есть диск (на нём игра, открываются все...

Chrome очень много пишет на диск
Добрый день. Заметил, что Chrome очень много пишет на диск - за сегодня -...

Не пишет диск установки Windows 7 через bootcamp
Суть такова: дан mac без дискового привода, нужно поставить Win 7. Пытаюсь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru