- Программирование на телефоне используя эмулятор терминала Termux
- Что нам понадобится?
- Почему именно Termux?
- Начало
- Как пользоваться терминалом Андроид
- Что такое Terminal Emulator for Android
- Как пользоваться эмулятором терминала
- Основные команды эмулятора терминала
- Все о настройке эмулятора терминала для Аndroid
- Как получить ROOT права: Видео
- С чего начать
- Как установить кастомную прошивку на Android: Видео
- Эмуляция входящего вызова на эмуляторе
- Эмулятор терминала для Аndroid: Видео
- Команды в Android Terminal Emulator
Программирование на телефоне используя эмулятор терминала Termux
Приветствую читателей! В этой статье я расскажу о том, как можно, имея android телефон, писать программы. Говорю сразу — root права не нужны.
Что нам понадобится?
Первое, что нам понадобится — андроид телефон со установленным на него приложением Termux (есть в Google Play). Для полноценной работы с терминалом, нам нужно достаточно памяти. У меня с десятками установленных пакетов приложение занимает 1.5 ГБ памяти.
Так же, для комфортного кодинга желательно, чтобы телефон был с поддержкой OTG, и у вас была клавиатура с подключением по USB, чтобы писать код на клавиатуре (куда удобнее). Если уж нет этого, то качаем клавиатуру Hacker’s Keyboard. В ней есть клавиша Ctrl, что нам важно.
Почему именно Termux?
Termux имеет в арсенале достаточно пакетов для работы с языками программирования: C/C++, Python, Golang, PHP, Lua.
Так же присутствуют базы данных, я знаю только о mariadb и postgresql.
Начало
При каждом запуске приложения мы видим приветствие, в котором указаны основные команды для работы с терминалом:
- pkg search — команда для поиска пакетов. Пример: pkg search vim
- pkg install — команда для установки пакета. Пример: pkg install vim
Для кодинга нам понадобится текстовой редактор. Здесь есть разные варианты, я выбирал Vim и вкратце расскажу, как с ним работать.
Установка vim:
Для примера работы с vim напишем «Hello World» на С.
После этого запустится Vim. Чтобы начать писать код, нужно нажать на клавишу «i».
Пишем код:
После этого нажимаем на клавишу «Esc», ставим двоеточие и пишем wq («:wq»). Это сохранит наш файл и изменения в нём (w — write) и закроет его (q — quit).
Важно знать!
w — сохранить изменения в файле
wa — сохранить изменения во всех файлах
q — закрыть файл
qa — закрыть все файлы
wq — сохранить изменения и закрыть файл
Теперь нам нужно скомпилировать этот код. Для начала установим компилятор:
Далее пишем следуюющее:
main.c — файл с нашим кодом
program — наша програмка.
Теперь можем запустить нашу програмку и посмотреть, работает ли она:
Источник
Как пользоваться терминалом Андроид
Как пользоваться терминалом Андроид. Приложение Эмулятор Терминала для Аndroid предоставляет возможность использования определённых команд для управления операционной системой, а так же, внесения в неё различных изменений. Для того, чтобы понять, что такое Terminal Emulator Android, как пользоваться им, нужно понимать, на чём основан механизм работы с терминалом.
Содержание:
Что такое Terminal Emulator for Android
Как известно, открытая OS Android не создавалась, что называется, «с нуля» — прообразом этой популярной операционной системы является Linux (общее название для всех Unix-подобных ОС), ядро которой стало фундаментом для разработки ОС Андроид. Ядро Линукс многими используется из-за широкого спектра функциональных возможностей, а поскольку в Android включено ядро linux, то на нём и базируется механизм работы терминала.
Программа позволяет пользователю работать в ОС Android, используя командную строку Linux. На ПК через командную строку и специальные утилиты можно выполнять настройку системы и подключать дополнительные модули. Похожие возможности стали доступны и на Андроиде с Terminal Emulator for Android.
То есть, имеются двоичные (или бинарные файлы), которые взаимодействуют непосредственно с «железом» смартфона. Через эмулятор терминала запускается текстовая команда, соответствующая каждому такому файлу.
Как пользоваться эмулятором терминала
Перед началом работы с командной строкой, нужно отдельно подчеркнуть, что наибольшую свободу в модификациях можно достигнуть, получив права «Суперпользователя» (ROOT).
Кроме того, потребуется установка BusyBox – набора Unix-утилит командной строки.
Теперь устанавливаем терминал на свой аппарат Андроид и приступаем к работе с ним.
Открываем Terminal Emulator, после чего мы увидим приглашение для ввода текста, которое должно выглядеть вот так: «u0_a106@android:/$»:
Теперь нам нужно ввести команду, например, «ls» и нажать «enter». После этого появится список файлов, находящихся в корневой директории:
Выполнение других команд может занять некоторое время, при этом будет высвечиваться белый курсор. Если вы допустили ошибку при написании, то должна появиться вот такая надпись: «/system/bin/sh: kv: not found», говорящая о том, что среди имеющихся не найдена команда kv, а затем появится приглашение для ввода.
Чтобы закрыть терминал, в правом верхнем углу нажимаем крестик, а в следующем окне, нажимаем «ОК».
Основные команды эмулятора терминала
На самом деле, команд очень много, для их просмотра пишем busybox. Теперь, чтобы посмотреть описание существующих команд непосредственно в терминале, вводим команду, сведения о которой хотим получить, и «—help». После этого должна появиться информация, но нужно учитывать, что она будет на английском языке.
Во время работы с терминалом необходимо учитывать некоторые нюансы:
- Путь к папкам и файлам пишем полностью после команд (пример: rm /storage/sdcard0/download/file).
- Нельзя допускать каких-либо ошибок или лишних пробелов.
- После ввода, команду запускаем кнопкой «enter».
- reboot recovery – перезагрузка смартфона в режиме рекавери
- date — вывести текущие дату и время
- free — использовать память и swap
- ls — вывести содержимое текущей папки
- cd — выполнить переход к нужной директории
- du — печатать объем файла
- pwd — показать полный путь к используемой папке
- service list — вывести список работающих процессов
- pm install —установка программы из apk файла
- df — показать размер объектов в указанной папке
- pm list packages — показ пакетов-файлов установленных приложений
После перечисленных ниже команд, нужно будет ввести путь к месту или объекту:
- cat – читать содержимое
- cp — копировать
- rm — удалить файл
- rmdir — удалить папку
- touch — создать файл
- mkdir — создать папку
Для следующих команд сначала пишем путь к папке (файлу), а затем, к новому месту:
- mv — переместить
- cp — копировать
pm uninstall — удалить приложение — здесь нужно указать путь /data/app/ и название файла без пробела (при необходимости название файла узнаём командой pm list packages)
ln — создать символьную ссылку на файл, причём, синтаксис в этом случае такой же, как у «cp«.
chown – смена владельца, chgrp – группы, которые нужно указать после команды, после чего, нужно написать название файла.
chmod — утилита для смены прав файла, причём, синтаксис такой же, как у предыдущей (т.е. в первую очередь права, затем файл).
insmod и rmmod — первая – подключение модулей к ядру, вторая – удаление (указанные команды могут использоваться исключительно продвинутыми пользователями).
kill — остановка процесса по его идентификатору (его можно узнать, используя утилиту ps, выводящую информацию о всех активностях).
mount, umount — используются в целях монтирования и размонтирования файловых разделов и систем (возможно использование только после тщательного изучения собственно системы).
su — полный доступ к системе на аппаратах с ROOT-доступом, после ввода команды, строка приглашения должна выглядеть вот так «root@android:/#».
Особые команды:
reboot — используется в целях перезагрузки аппарата после команды su.
exit — закрыть терминал (через эту команду можно также выйти из администратора).
В данном случае команда su используется нами для утилит, которые требуют права «суперпользователя», а дальше, чтобы что-либо не поменять случайно, нужно ввести exit, обратите внимание: приглашение снова выглядит вот так: «u0_a106@android:/ $».
Ещё об одной необычной утилите dd – она используется для копирования одного файла или раздела в другой. Её синтаксис: ddif=/dev/block/platform/mmcblk0p1 of=/storage/external_SD/image, где «if=» будет устройством, с которого копируем, а «of=» файлом, куда копируем.
Данная команда создаёт образ раздела mmcblk0p1. Она имеет ещё два параметра, это «count=» — фрагмент, записывающий новый файл, и , «bs=» — объем фрагмента в байтах. Пример: команда dd if=/storage/sdcard0/file1 of=/storage/external_SD/file2 bs=500 count=7 выполнит копирование из file1 в file2 в общей сложности семь кусков по 500 байт.
Это, пожалуй, всё, о чём мы хотели рассказать сегодня.
Источник
Все о настройке эмулятора терминала для Аndroid
Операционная оболочка для мобильных устройств Android не была создана с нуля. Разработчики взяли ядро Linux, немного доработали его и получили всем известную на сегодняшний день систему. С прообразом, мобильную платформу роднит только ядро и несколько программ для управления аппаратной частью. Но как известно, Linux многие используют именно из-за широких функциональных возможностей, в нем можно делать практически все. На Андроиде же подобное возможно только после получения ROOT-прав, что автоматически лишает устройство гарантии. В этой статье будет рассмотрена одна важная функция – эмулятор терминала для Аndroid.
Как получить ROOT права: Видео
С чего начать
В первую очередь необходимо получить ROOT-права на своем гаджете. Только тогда можно будет использовать всем преимущества терминала. Но можно этого и не делать. Опишем инструкцию использования функцией:
- Сначала, по ссылке надо сказать программу Terminal Emulator. После ее установки, пользователи, которым немного за 20, заметят, что утилиты имеет сходство с командной строкой.
- Перед тем как использовать Android Terminal Emulator, важно почистить систему от вирусов и различных приложений, которыми не пользуются.
- Та или оная опция запускается с помощью команд. Если у кого-то есть опыт работы с командной строкой в Windows, эти знания наверняка пригодятся, общий принцип один и тот же.
Один момент, который хотелось бы отметить особо, существует Android Terminal Emulator увеличение памяти. Есть команда command rm, которая может удалить любые файлы (при наличии ROOT-доступа). Сделать такое не всегда возможно через стандартные средства. Последнее является дополнительным аргументом за получение полного доступа и установки терминала. Кстати есть и другие программы с такими функциями, например, busybox .
Как установить кастомную прошивку на Android: Видео
Эмуляция входящего вызова на эмуляторе
При всей широте функциональных возможностей, многие пользователи задают вопрос – как эмулировать входящий вызов в эмуляторе Android. Сделать это лучше всего на компьютере. Рассмотрим на примере Android SDK. Для этого, необходимо зайти в меню «Контроль над эмуляцией». Выбрать пункт «Телефон», ввести номер, поставить галочку возле «Voice» и нажать «Звонить». Ответить или отменить звонок можно с помощью зеленой кнопки эмулируемой оболочки. Такая процедура актуальна только для установленного и настроенного на компьютер эмулятора.
Эмулятор терминала для Аndroid: Видео
Источник
Команды в Android Terminal Emulator
Если у вас есть смартфон на Android и вы знакомы с Linux то наверное хоть раз интересовались как использовать терминал в Android. Как вы знаете операционная система Android основана на ядре Linux, а это значит что здесь есть командная оболочка и в ней доступны множество стандартных команд Linux. По умолчанию стандартной утилиты терминала в Android нет. Получить к нему доступ можно несколькими путями:
- первый — скачать приложение Android Terminal Emulator с GooglePlay.
- второй подключиться к смартфону с компьютера с помощью отладчика adb.
Но наша статья не об этом, сегодняшняя тема: команды в Aandroid Terminal Emulator или точнее команды терминала Android.
В интернете есть много статей на эту тему но во всех них чего-то не хватает, описана пара специфичных команд и на этом все, а хочется полный список, включая команды Linux, тогда я и решил написать эту статью. Я не говорю что я опишу все команды, но постараюсь охватить большинство. Здесь приведено лишь короткое описание о некоторых командах Android я расскажу подробнее в следующих статьях, а о командах Linux можно найти подробную информацию в интернете.
Теперь об обозначениях — для некоторых команд необходимы права root, перед ними я буду ставить знак @.
Начнем. Команды терминала это ничто иное как небольшие консольные утилиты, большинство системных утилит находиться в папке /system/bin и еще несколько в /vendor/bin. Те что в vendor мы трогать не будем. Чтобы было удобнее расположу все команды по алфавиту.
adb — Отладчик андроид. Поскольку Android это все же Linux, к нему по USB можно подключать другие устройства в том числе смартфоны, adb позволяет ими управлять и дает доступ к их терминалу. описание его команд и возможностей тянет на целую статью, я опишу все в одной из следующих статей.
am — Менеджер окон (Action Manager), с помощью него можно запустить и остановить любое приложение или сервис. Например запуск приложения настройки:
am start -n com.android.settings/.Settings
badblocks — проверка флешки на наличие битых секторов:
Результат можно записать в файл:
badblocks /dev/block/mmcblk0 > /sdcard/badblocks
или вывести на экран:
badblocks -v /dev/block/mmcblk0
bmgr — управление резервным копированием Android.
cat — консольная утилита для просмотра содержимого файла.
chmod — аналогична команде Linux, меняет права доступа файла, доступен только восьмеричный формат записи.
Например дать все права (чтение, запись, выполнение):
chmod 777 /sdcard/file
chown — меняет владельца файла в Linux, Например:
chown root /sdcard/file
cmp — сравнивает два файлы
cmp /sdcard/file1 /sdcard/file2
cp — копирует файл, из источника(параметр 1) в приемник(параметр 2).
cp /sdcard/file1 /sdcard1/
Подробнее о cp можно почитать в статье копирование файлов в linux
date — показать текущую дату в системе.
Sat Nov 14 13:44:56 EET 2015
dd — создать образ диска, Параметры if= файл устройства диска, of=файл для записи
dd /dev/block/mmcblk0 /sdcard/img.iso
Будет создан образ флешки mmcblk0.
df — анализ свободного места на диске. Например:
df -h /dev/block/mmcblk1
Filesystem Size Used Free Blksize
/mnt/secure 484.5M 0.0K 484.5M 4096
/mnt/asec 484.5M 0.0K 484.5M 4096
/mnt/obb 484.5M 0.0K 484.5M 4096
/system 1.4G 971.7M 435.8M 4096
dmesg — просмотр лога сообщений ядра.
du — просмотр размера файла.
@ ext4_resize изменение размера раздела с файловой системой ext4.
@ fsck_msdos — проверка флешки на ошибки.
grep — утилита для фильтрации текста. Например вывести только строки содержащие terminal:
/sdcard/file | grep terminal
@ ifconfig — просмотр и управление сетевыми устройствами. Например просмотр информации о карте wifi:
Или отключение wifi:
ifconfig wlan0 down
Узнать список сетевых устройств можно командой:
iptables — управление настройками фаервола iptables, это очень обширная тема которой мы касаться не будем.
kill — уничтожить процесс по его PID.
Чтобы узнать pid можно использовать утилиту ps.
ln — создать ссылку на файл или папку, если указан параметр -s — символическую ссылку.
ln /sdcard/file /sdcard/file2
log — записать строку в лог системы.
logcut — просмотр лога системы в реальном времени.
ls — просмотр списка файлов и папок в директории:
lsmod — просмотр загруженных модулей ядра
lsof — просмотр открытых в системе файлов.
make_ext4fs — форматировать флешку в файловую систему ext4
md5 — подсчитать контрольную суму файла.
mkdir — создать папку, в текущем каталоге.
make2fs — форматировать флешку в файловую систему ext2
mount — примонтировать диск, образ или папку. Например:
mount -t ext2 /dev/block/mmcblk1p1 /mnt/sdcard
Подробнее о монтировании можно почитать в моей статье: Монтирование в Android
mv — переместить файл, аналогично cp
netcfg — просмотр информации об сетевых соединениях.
notify — утилита для слежения за изменениями в файловой системы с помощью подсистемы ядра inotify.
ping — известная утилита для проверки доступности сетевого узла.
pm — пакетный менеджер android, позволяет, устанавливать, удалять и просматривать установленные пакеты.
ps — просмотр всех запущенных процессов и информации о них.
USER PID PPID VSIZE RSS WCHAN PC NAME
root 1 0 1000 848 c0106ef8 0001bfb4 S /init
root 2 0 0 0 c006e038 00000000 S kthreadd
root 3 2 0 0 c0057a54 00000000 S ksoftirqd/0
reboot — перезагрузить смартфон из консоли.
resize2fs — аналогично resize_ext4, только для ext2
rm — удалить файл.
rmdir — удалить папку.
rmmod — выгрузить модуль ядра.
route — управление таблицей маршрутизации.
touch — создать пустой файл.
top — интерактивный вариант списка запущенных процессов.
@ screenshot — сделать снимок экрана.
shutdown — выключить смартфон.
service — управление сервисами. Например посмотреть список запущенных сервисов:
Это были все команды описание которых я нашел, по возможности список будет пополняться.
Десерт на сегодня — обзор новой версии Android 6.0 Marshmallow:
Источник