Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
КВА696
37 / 37 / 6
Регистрация: 20.04.2014
Сообщений: 630
Завершенные тесты: 2
#1

Разрешение на создание файла для разных версий ОС - Программирование Android

30.10.2016, 12:19. Просмотров 210. Ответов 7
Метки нет (Все метки)

Почему то не создаётся текстовый фаил в эмуляторе 4.4.2 не в каком каталоге ни не сд карте ни в памяти
I/System.out: Ошибка ---java.io.IOException: open failed: EACCES (Permission denied)

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
write("/storage/sdcard/Alarms/re.txt", "ntrc");
...
public void write(String fileName, String text) {
        //Определяем файл
        File file = new File(fileName);
 
        try
        {
            //проверяем, что если файл не существует то создаем его
            if(!file.exists())
            {
                file.createNewFile();
            }
 
            //PrintWriter обеспечит возможности записи в файл
            PrintWriter out = new PrintWriter(file.getAbsoluteFile());
 
            try
            {
                //Записываем текст у файл
                out.print(text);
            }
            finally
            {
                //После чего мы должны закрыть файл
                //Иначе файл не запишется
                out.close();
            }
        }
        catch(IOException e)
        {
            System.out.println("Ошибка ---"+e.toString());
        }
    }
больше ни чего не делал ни куда ни чего не добовлял

Добавлено через 8 минут
Нашел добавил в манифест <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
И заработало. Почему в уроках не пишут что ещё нужно чтобы все работало коректно? Есть ли что нить про манифест какие нить уроки узнать что да для чего.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.10.2016, 12:19     Разрешение на создание файла для разных версий ОС
Посмотрите здесь:
Android Google maps метод поиска фрагмента карт на разметке для разных версий андроид
Adobe Flash CS 5.5, ActionScript 3.0 - Создание кода для разных фреймов Android
Не удается подключить NotificationCompat для старых версий Android
Android Создание массива экземпляров разных классов
Сделать разрешение приложения одинаковым для всех девайсов Android
Android Два разных apk-файла, завязанных на один проект
Разметка для разных экранов Android
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
shavuz
101 / 107 / 20
Регистрация: 29.01.2014
Сообщений: 534
30.10.2016, 13:07     Разрешение на создание файла для разных версий ОС #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
есть несколько видов пермишн, такие которые надо добавлять в манифест и такие которые идут "бесплатно", т.е. не надо отдельно их запрашивать, а есть такие которые вообще нельзя получить)
вот список :
https://developer.android.com/refere...ermission.html

до 6.0 жизнь в плане разрешений была легкой, после уже нужно отдельно запрашивать разрешения on the fly. т.е. ваши разрешения для сторадж в шестом андроиде рабоатать не будут.
КВА696
37 / 37 / 6
Регистрация: 20.04.2014
Сообщений: 630
Завершенные тесты: 2
30.10.2016, 14:27  [ТС]     Разрешение на создание файла для разных версий ОС #3
Цитата Сообщение от shavuz Посмотреть сообщение
до 6.0 жизнь в плане разрешений была легкой, после уже нужно отдельно запрашивать разрешения on the fly. т.е. ваши разрешения для сторадж в шестом андроиде рабоатать не будут.
А если программа пишется для старой версии 4 или 5 она же все равно будет работать на после 6? или на новых версиях программа не запустится? на сколько по урокам я понял новые андроиды просто обязаны понимать старые написанные версии
shavuz
101 / 107 / 20
Регистрация: 29.01.2014
Сообщений: 534
30.10.2016, 15:20     Разрешение на создание файла для разных версий ОС #4
нет, на новых версиях нужно запрашивать разрешения не через манифест, а именно там где они нужны, например если вы собираетесь записать в файл только на 3-тьем экране , то только в нем нужно запрашивать нужное разрешение, пользователю будет показано диалоговое окно , хочет ли он дать разрешения или нет, так же нужно предусмотреть что программа будет делать если пользователь отказался, например если это джипиэс и пользователь отказался то не будет показана текущая локация , в вашем случае ничего не будет записано в файл. запрос будет только в первый раз. дальше андроид уже будет знать что есть разрешения.
Цитата Сообщение от КВА696 Посмотреть сообщение
А если программа пишется для старой версии 4 или 5 она же все равно будет работать на после 6?
- не будет. просто будет вылетать. в наше время нельзя игнорировать разрешения. обязательно нужно учесть 6+ версии андроида.
Alex_Fedor
30 / 30 / 4
Регистрация: 20.01.2015
Сообщений: 225
30.10.2016, 16:03     Разрешение на создание файла для разных версий ОС #5
Цитата Сообщение от shavuz Посмотреть сообщение
обязательно нужно учесть 6+ версии андроида.
Скажите, а вот приложения написанные еще на эклипсе до 6 версии, там вроде максимальная версия андроида нигде не указывалась. Минимальная, целевая, и на которой компилировать.
shavuz
101 / 107 / 20
Регистрация: 29.01.2014
Сообщений: 534
30.10.2016, 17:05     Разрешение на создание файла для разных версий ОС #6
я не очень помню эклипс, но по большему счету максимальная версия не нужна, это работает от минимальной и до конца. ничего страшного нет в запросе разрешений на 6+. это пару строчек в активити.
Alex_Fedor
30 / 30 / 4
Регистрация: 20.01.2015
Сообщений: 225
30.10.2016, 17:14     Разрешение на создание файла для разных версий ОС #7
Цитата Сообщение от shavuz Посмотреть сообщение
это пару строчек в активити.
Это понятно, когда новый проект делаем будем учитывать. А вот если уже апк файл и лежит на каком нибудь плее. И плз если работает на АС скажите характеристики своего компа. Озадачился подбором железа под АС.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.10.2016, 17:22     Разрешение на создание файла для разных версий ОС
Еще ссылки по теме:
Dimens для разных экранов Android
Android Разные стили для разных тем
Размеры ресурсов для разных устройств Android
Разная разметка для разных разрешений Android
Android Разные картинки для разных плотностей

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

Или воспользуйтесь поиском по форуму:
shavuz
101 / 107 / 20
Регистрация: 29.01.2014
Сообщений: 534
30.10.2016, 17:22     Разрешение на создание файла для разных версий ОС #8
Дома работаю с i5, 8gb ram, 128 ssd - этого вполне достаточно.
на работе i7, 16gb ram, 256 ssd
если лежит на каком нибудь плее, что мешает сделать апдейт,почините и залейте заново, сейчас уже много устройств 6+ , так поучается что теряете пользователей только потому что не поддерживаете новые устройства???
Yandex
Объявления
30.10.2016, 17:22     Разрешение на создание файла для разных версий ОС
Ответ Создать тему
Опции темы

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