Russian Chinese (Simplified) English
Войти

Свершилось! Вчера опубликовал своё первое приложение на Google Play! Простой, но функциональный файловый проводник, с поддержкой Root, шифрования, создания zip-архивов, встроенным терминалом и читалкой и ... короче подробнее под катом, либо можно сначала скачать и попробовать, только про отзывы не забудьте;)

UPDATE: текущая версия 1.4.7. Обновил интерфейс, добавил новые функции, внес много исправлений. Налетайте!

 

Коротко, что может приложение на данный момент:
* Полный доступ к корневой файловой системе (при наличии Root-прав)
* Создание и распаковка zip архивов (на основе библиотеки net.lingala.zip4j). Поддержка архивов с паролем (шифрование: AES 128bit, AES 256bit)
* Шифрование файлов с помощью алгоритма AES (128 и 256 bit)
* Терминал с поддержкой выполнения команд в режиме root (для перехода в режим суперпользователя нужно ввести команду su, для выхода из режима суперпользователя - exit)
* Простой текстовый редактор
* Базовые операции с файлами и директориями: создание, копирование, перемещение, удаление, переименование
* Просмотр основных свойств объектов
* Сортировка списка объектов по имени, по дате изменения (от старых к новым и наоборот)
* Поиск файлов и папок по части имени
* Живой поиск - мгновенный поиск объектов в текущем каталоге
* Редактирование прав
* Копирование в буфер обмена имени и пути объектов
* История переходов по каталогам (быстрый переход к указанному пути)
* Возможность создания закладок для наиболее часто посещаемых каталогов

 

Разработка растянулась аж на 5 месяцев (с марта по август) ! Но, это и понятно, в первый раз, первое большое приложение, первый большой проект. Естественно писал не каждый день, обычно по вечерам, иногда на работе, когда делать было нечего (всяко полезнее чем раскладывать пасьянс:D). А вообще, эти 5 месяцев пролетели как-то очень быстро...

Сам проект разумеется Open Source. Прям полностью и целиком выложил СЮДА.

 

Проект состоит из самого приложения, а также 4 самописных библиотек:

* ru.scorpio92.io - тут реализованы основные файловые операции, а также набор утилит для работы с файлами, папками и процессами

* ru.scorpio92.arch - библиотека для создания zip архивов. Является надстройкой над весьма популярной библиотекой net.lingala.zip4j

* ru.scorpio92.security - библиотека в которой реализовано шифрование AES, а также вычисление контрольной суммы SHA-1

 

Естественно во всех 3-х реализованы такие возможности как работа в отдельном потоке и вывод прогресса в специльно создаваемый для этих целей AlertDialog.

И ещё одна библиотека: ru.scorpio92.view. Случилось написать её буквально за пару дней до того как решил зафиналить приложение. Делал интро для приложения (что-то вроде вводного курса, при первом открытии) и с ужасом заметил, что картинки которые я вставил чтобы текст был не скучным, оагают при пролистывании фрагментов интро. Это не дело, подумал я и обратился к гуглу. К счастью, в разделе для разработчиков уже был разобран пример как работать с большими картинками, загонять их в Bitmap и пережимать, для уменьшения размера. Разобрался, дработал под свои нуждны. Пока эта библиотека содержит только функционал для эффективного отображения картинок в ImageView, но позже добавлю еще что-нибудь.

Но я что-то ушел в сторону. Бибилиотеки, я разберу позже и напишу статьи по каждой из них, с детальным разбором - вдруг кому тоже пригодятся.

 

Само приложение я постарался сделать максимально простым и не перегруженным лишней ерундой и мудренными элементами интерфейса.

Вот немного примеров интерфейса приложения (английская версия)

1  2

4  6

 

Думаю новичок должен разобраться! А для тех кому нужно нечто большее, чем просмоторщик объектов на карте памяти - это еще и Root проводник со всеми вытекающими отсюда плюшками (естественно нужен Root), впрочем приложение при запуске самое проверит наличие рут-прав и запросит если нужно.

 

BusyBox для работы приложения не нужен! Он уже встроен в само приложение. В этом вся фишка. Приложение использует комбинированный подход к получению информации об объектах: средства Java/Android api + shell команды & апплеты BusyBox.

 

Также для продвинутых пользователей предусмотрен терминальный клиент и простой редактор текстовых файлов. Терминальный клиент работает в двух режимах: обычный (из под пользователя-приложения) и из-под рута. Для перехода в режим рута - вводим su и погнали! Причем, при вводе su права суперпользователя не запрашиваются, они запрашиваются непосредственно при вводе самих команд.

Окно терминала

Screenshot 2016 08 18 23 00 05

 

Встроенная читалка и редактор текста кстати переваривает не только тектовые файлы. Принудительно можно открыть хоть бинарник. Для некоторых форматов (xlm, txt, log, conf и т.д.) - это просмоторщик по-умолчанию.

Окно читалки

Screenshot 2016 08 18 23 00 55

 

Что в терминале, что в читалке можно менять размер шрифта, включить перенос строк и отображение номера строк.

 

Остальное описывать не буду, практически все это есть в интро и отобразится при первом открытии приложения. Приложение я выложил разумеется не ради наживы, а для того чтобы получить бесценный первый опыт и ваши отзывы, прошу не скупиться на них!