Как сохранить файл на телефоне
Работа с файлами в Android не сильно отличается от таковой в Java. В этом уроке рассмотрим, как записать/прочесть файл во внутреннюю память и на SD-карту.
Project name: P0751_Files
Build Target: Android 2.3.3
Application name: Files
Package name: ru.startandroid.develop.p0751files
Create Activity: MainActivity
Заполним strings.xml:
Рисуем экран main.xml:
4 кнопки, смысл которых понятен по тексту на них.
MainActivity.java:
В onclick обрабатываем нажатия 4-х кнопок и вызываем соответствующие методы.
writeFile – запись файла во внутреннюю память. Используется метод openFileOutput, который на вход берет имя файла и режим записи: MODE_PRIVATE – файл доступен только этому приложению, MODE_WORLD_READABLE – файл доступен для чтения всем, MODE_WORLD_WRITEABLE - файл доступен для записи всем, MODE_APPEND – файл будет дописан, а не начат заново.
readFile – чтение файла из внутренней памяти. Используем метод openFileInput, принимающий на вход имя файла. Здесь и в методе записи внутреннего файла вы можете задать только имя файла, а каталог для ваших файлов вам уже выделен.
writeFileSD – запись файла на SD. Используем метод getExternalStorageState для получения состояния SD-карты. Здесь можно посмотреть какие бывают состояния. Нам нужно MEDIA_MOUNTED – когда SD-карта вставлена и готова к работе. Далее мы получаем путь к SD-карте (метод getExternalStorageDirectory), добавляем свой каталог и имя файла, создаем каталог и пишем данные в файл.
readFileSD – чтение файла с SD. Все аналогично предыдущему методу, только файл не пишем, а читаем.
Осталось в манифест добавить разрешение на работу с файлами на SD - android.permission.WRITE_EXTERNAL_STORAGE.
Все сохраним и запустим. Видим экран с 4-мя кнопками:
Внутренняя память
Жмем кнопку Записать файл. Видим в логе:
Проверим. Идем в File Explorer (Window > Show View > Other > Android > File Explorer) и открываем там папку data/data/ru.startandroid.develop.p0751files/files и видим там наш файл file.
Возвращаемся в эмулятор. Жмем Прочесть файл и в логе видим:
Это тот текст, который мы записывали в файл.
SD карта
Теперь жмем Записать файл на SD.
Файл записан на SD: /mnt/sdcard/MyFiles/fileSD
Проверяем. Идем в FileExplorer и открываем там папку mnt/sdcard/MyFiles/ а в ней файл fileSD.
Возвращаемся в эмулятор и жмем кнопку Прочесть файл с SD. В логе видим:
Содержимое файла на SD
Этот текст мы и записывали.
mnt/sdcard - обычно этот путь ведет к содержимому SD-карты. Возможно у вас он будет другой.
В общем, при работе с файлами на SD вы используете стандартные java механизмы. А при работе с внутренним хранилищем для удобства можно использовать методы-оболочки от Activity:
openFileOutput – открыть файл на запись
openFileInput – открыть файл на чтение
И есть метод getFilesDir – возвращает объект File, соответствующий каталогу для файлов вашей программы. Используйте его, чтобы работать напрямую, без методов-оболочек.
Подробности работы в java с файловой системой я здесь описывать не буду. На нашем форуме пользователь SKR сделал отличную памятку по работе с файлами. Скорее всего, вы найдете там все что нужно.
Если у вас проверка SD-карты показывает, что карта недоступна (см. лог), то убедитесь в свойствах AVD, что у вас для SDCard указан Size или File. Если указаны, то попробуйте перезапустить AVD.
На следующем уроке:
- создаем экран с вкладками
- используем иконку в названии вкладки
- используем обработчик перехода между вкладками
- в чатах решаем возникающие вопросы и проблемы по различным темам: Android, Kotlin, RxJava, Dagger, Тестирование
- ну и если просто хочется поговорить с коллегами по разработке, то есть чат Флудильня
- новый чат Performance для обсуждения проблем производительности и для ваших пожеланий по содержанию курса по этой теме
Недавно мы писали о том, нужен ли бэкап системе на компьютере и как его правильно сделать. А нужно ли сохранять файлы вашего смартфона? Спойлер: да.
Потерялся, разбился, завис, неудачно обновился, сломался, умер — десятки сценариев, при которых все данные вашего смартфона могут потеряться. А с ними сотни важных номеров телефонов, драгоценные фотографии и видео, любимые игры (и достижения в них), важные приложения. В телефоне подчас важной информации хранится даже больше, чем на компьютере. И, чтобы не потерять безвозвратно важные данные, нужен бэкап.
Если вы не читали нашу статью о бэкапе компьютерной системы, то кратко напомним, что бэкап — это резервная копия данных. Переносить данные можно как на внешний носитель — например, на SD-карту, другой смартфон или компьютер, так и на облачные хранилища. Мы подобрали несколько программ, которые помогут вам содержать всю нужную информацию в сохранности, что бы ни случилось.
Titanium Backup
Базовые возможности бесплатны, но есть и PRO-версия с расширенным функционалом. Интерфейс у программы не самый дружелюбный, но разобраться в ней можно. На некоторых моделях телефонов Titanium Backup капризничает и не распознает активированные root-права и, судя по отзывам, решается эта проблема исключительно перепрошивкой. Если вы не готовы снимать официальную ОС, попробуйте другие приложения из подборки.
Buggy Backup
Приложение, которое само позиционирует себя как «самый функциональный менеджер приложений и резервных копий». Именно такая фраза написана в панели управления Buggy Backup. Программа действительно удобная и интуитивно понятная. Есть все варианты бэкапа: локальный, облачный, на внешние носители. При этом можно выбирать, насколько полная копия программ вам нужна — можно зарезервировать как только установочный файл, так и все полные данные, хранящиеся в программе.
Buggy Backup тоже работает как файловый менеджер: можно управлять приложениями, делиться, удалять, сбрасывать настройки, проверять обновления, чистить данные и кэш, а также переводить установленные в приложения в разряд системных. К системным приложениям здесь также есть доступ и управление. Для основных операций root не требуется.
App Backup & Restore
Еще один менеджер бэкапа, в целом схожий с предыдущими. Здесь можно настраивать автоматическое копирование и количество резервных версий, задавать путь локального бэкапа (например, на SD-карту) или подключить облачное хранилище. Бэкап на внешние носители также доступен. По дефолту приложение запускается на английском языке, но в настройках можно выбрать русский.
У этого приложения очень удобный интерфейс: гибкая сортировка списков приложений, выбор пути бэкапа с одной кнопки, понятная система восстановления приложений и приятные дополнительные функции типа отправки apk-файлов по электронной почте и других.
Забавное дополнение — Backup & Restore может проверить вашу систему на вирусы.
Google Drive
Здесь вам даже устанавливать дополнительно ничего не придется. Достаточно завести Google Облако, а приложение у вас в Android-смартфоне наверняка есть по дефолту. Это самый простой, понятый и, вместе с тем, хороший вариант бэкапа.
Бэкап можно включить прямо в системных настройках смартфона. Для этого зайдите в Настройки, найдите вкладку Google, а далее — «Резервное копирование». Бэкап будет происходить в фоновом, автоматическом режиме.
G Cloud
Программа и облачное хранилище в одном лице. Если вы не хотите использовать место на своем Google Диске или другом облаке для бэкапа — можно установить отдельный G Cloud. Естественно, придется завести новый аккаунт (это можно сделать быстро, привязавшись через Facebook). Есть настройки автозагрузки и выбор времени бэкапа, доступна дополнительная защита облака паролем.
Дополнительное место можно получить разными способами: незначительное количество от 100 до 1000 МБ даются за разные действия типа установить дополнительное приложение, перейти по ссылке и т. д. А если нужно больше — придется платить. 100 ГБ стоят 12 долларов в год.
- Коснитесь в правом нижнем углу экрана.
- Нажмите:
- «Снять видео» или «Сделать фото», чтобы снять видео или фото и сразу добавить их в Облако;
- «Из других приложений», чтобы загрузить файл из любого другого приложения, если в нем есть такая возможность.
После того как вы загрузите файл в Облако, он будет доступен там, даже если вы удалите или измените исходный файл на телефоне.
Обратите внимание, что файлы, добавленные вручную в загрузку, будут закачиваться по любому доступному в данный момент каналу — Edge, 3G, LTE, WiFi.
Максимальный размер файла, загружаемого через мобильное приложение — 2 ГБ.
Получить ссылку на файл или папку
Чтобы получить ссылку на файл (папку):
Удалить файл или папку
- Нажмите на значок « Меню » напротив файла или папки.
- Нажмите «Удалить» в появившемся списке.
Переместить файл (папку)
- Нажмите на значок « Меню » напротив файла или папки.
- Нажмите «Переместить» в появившемся списке.
- Коснитесь названия папки, в которую вы хотите переместить файл или папку и нажмите «Переместить».
Переименовать файл или папку
- Нажмите на значок « Меню » напротив файла (папки).
- Нажмите «Переименовать» в появившемся списке.
- Введите новое имя и нажмите ОК.
Массовые действия с файлами или папками
Чтобы выделить несколько файлов или папок для дальнейших действий с ними, нажимайте на иконку рядом с именем файла или папки.
После того как файлы выбраны, вы можете:
Сохранить файл или папку из Облака на телефон (стандартная папка, выбранная папка или SD-карта)
Вы можете сохранять файлы или папки из Облака как в стандартной папке на телефоне, в выбранной вами папке, так и на SD-карту.
Чтобы сохранить файл или папку из Облака на телефон:
- Нажмите на значок «Меню» напротив файла (папки) ;
- В появившемся меню выберите «Сохранить в галерею» (доступно для изображений), чтобы сохранить в стандартной папке, или «Сохранить файл в. », если хотите выбрать папку для сохранения в памяти телефона или на SD-карте ;
Если вы сохраняете на телефон папку из Облака, то структура данной папки остается неизменной.
Например, если в сохраняемой папке находятся 4 вложенные папки, то при сохранении на телефон все вложенные папки и файлы будут также перенесены.
Создать папку
- Коснитесь значка «Добавить», который расположен в правом нижнем углу экрана.
- Нажмите «Создать папку».
- Введите имя новой папки и нажмите «Создать».
На самом деле сделать это достаточно просто. Данная статья подскажет, как загрузить документ в телефон, работающий под управлением трёх самых распространённых мобильных платформ.
И поможет нам в этом специальное программное обеспечение из магазина приложений.
Инструкция для iOS
- Для этого заходим в App Store или iTunes Store и ищем программу, поддерживающую возможность работы с офисными документами, то есть с текстовыми файлами, таблицами и презентациями.
- Неплохим офисным пакетом является Documents To Go. Среди других бесплатных программ можно выделить такое удобное и простое приложение, как Office Plus.
- После загрузки и установки софта на смартфон мы можем подключить его к ПК и открыть iTunes.
- В разделе «Программы» должно обязательно отобразиться то приложение, которое мы скачали
- Добавлять или перетаскивать документы можно будет прямо туда.
- Не забываем про синхронизацию.
Инструкция для Android или Windows Phone
Если мы пользуемся платформой Android, то сможем установить на свой смартфон приложение вроде Google Docs. Эта программа разработана специально для просмотра и редактирования документов.
Также допускается работа с PDF-файлами и презентациями. Отметим, что загружать и конвертировать документы через такое приложение очень удобно.
К примеру, мы можем сфотографировать тот или иной документ и конвертировать его. При желании мы вправе открыть доступ и для друзей.
Кстати, для работы с PDF-файлами на Android лучше всего пользоваться приложением «Google Диск». Нажимаем на файл, после чего открываем меню справа вверху.
После этого мы можем выделить и скопировать текст, произвести поиск по документу, сохранить файл или распечатать его через Виртуальный принтер Google.
- Если у нас смартфон Windows Phone, следует воспользоваться приложением Microsoft Word Mobile.
- После его установки открываем раздел под названием «Office».
- Для перехода к опции «Документы» проводим пальцем по экрану.
- Производим поиск нужного нам документа и кликаем по нему.
- Кроме того, мы можем перейти к разделу «Места» и указать, где именно находится тот или иной файл (на устройстве, в OneDrive и так далее).
Если мы хотим пользоваться OneDrive, нам нужно будет настроить идентификатор Windows Live ID.
Читайте также: