Linux для работы с Android

всё относительно мобильных гаджетов и приложений

Модераторы: Olej, adminn, vikos

Правила форума
Все сообщения не по теме форума будут, без каких либо уведомлений, удаляться, а их авторы - убираться из регистрации.
Язык сообщений - исключительно русский.
fel123
Интересующийся
Сообщения: 6
Зарегистрирован: 06 апр 2015, 21:48
Контактная информация:

Linux для работы с Android

Непрочитанное сообщение fel123 » 22 апр 2015, 09:23

Всем привет!
Мне 78 лет, 2 года на пенсии. В основном работал с Windows, немного - Solaris и Unix, сейчас хочу освоить Android, но на Linux. Пробовал несколько версий, но везде различные баги; в Fedora-21, например, в ls выскакивают строчки из квадратиков.
Прошу посоветовать мне, какой дистрибутив подойдет, чтобы:
- при установке подключался su;
- возможно подключение пакета SDK;
- клавиатурный переключатель языков ввода;
- корректная работа команд - например, в Fedora я не смог найти команду выхода из терминала - только перезагрузка!
СПАСИБО!

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Linux для работы с Android

Непрочитанное сообщение Olej » 22 апр 2015, 11:25

fel123 писал(а): В основном работал с Windows, немного - Solaris и Unix, сейчас хочу освоить Android, но на Linux.
Я не понял вашего "освоить Android, но на Linux" - растолкуйте подробнее: что вы и куда хотите устанавливать.
На какое оборудование и для каких целей?
fel123 писал(а): Пробовал несколько версий, но везде различные баги; в Fedora-21, например, в ls выскакивают строчки из квадратиков.
Прошу посоветовать мне, какой дистрибутив подойдет, чтобы:
- при установке подключался su;
- возможно подключение пакета SDK;
- клавиатурный переключатель языков ввода;
- корректная работа команд - например, в Fedora я не смог найти команду выхода из терминала - только перезагрузка!
С Fedora тоже можно разобраться ... если вы подробнее опишете что не так - в Fedora 20, к примеру, никаких проблем.
Возможно вы в Fedora смотрели ls в текстовой консоли а не графическом терминале?

Из хороших, добротных и комфортных, дистрибутивов последнего времени: Mint 17.1. Особенно хорошо - стабильно и без проблем - с графической средой Cinnamon (вот этот образ) + есть очень хорошее подробное русскоязычное описание (там в теме оно показано).

SDK - вы имели виду проект android-sdk-linux_x86?

fel123
Интересующийся
Сообщения: 6
Зарегистрирован: 06 апр 2015, 21:48
Контактная информация:

Re: Посоветуйте Linux

Непрочитанное сообщение fel123 » 23 апр 2015, 00:30

Olej, спасибо за ответ!
Вы правы, я действительно входил в командный режим по CTRL+ALT+6 и не мог из него выйти.
Это была Fedora 15. И действительно, на ls высвечивались строчка белых квадратиков, но при переходе в корневой каталог (../) ls работала нормально. По SDK - да, я хочу поработать с этим пакетом - меня просто бесит, что не могу войти в SU на моем Android 4.4.2! Пробовал и через ADB, и эмулятор терминала, и кучу других программ - все без толку! Придется учиться.
Благодарю за ссылки, буду пробовать.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Linux для работы с Android

Непрочитанное сообщение Olej » 23 апр 2015, 10:18

fel123 писал(а): Вы правы, я действительно входил в командный режим по CTRL+ALT+6 и не мог из него выйти.
Это была Fedora 15. И действительно, на ls высвечивались строчка белых квадратиков, но при переходе в корневой каталог (../) ls работала нормально.
1. Вернуться из текстовой консоли в графический менеджер вы можете, перейдя в ту консоль, в которой у вас запущена графика, обычно это Ctrl+Alt+7 или Ctrl+Alt+1 (в зависимости от дистрибутива и их системы инициализации).

2. Чтоб не гадать, вы можете посмотреть это в команде who:

Код: Выделить всё

olej@nvidia ~ $ who
root     tty6         2015-04-23 09:57
olej     tty8         2015-04-23 09:49 (:0)
olej     pts/2        2015-04-23 09:53 (:0.0)

Я здесь специально для вас залогинился в текстовой консоли Ctrl+Alt+6. А графическая консоль (:0 - это DISPLAY=:0 X11 системы) здесь (это Mint 17.1) - это CtrlAlt+8 ... к моему некоторому удивлению (6 текстовых консолей 1...6 + графика на 8).

3. Режим текстовой консоли вам никогда не нужен!
Я знаю только один род работы, который на сегодня иногда требует перейти в текстовую консоль поработать - это отладка программного кода модулей ядра Linux (драйверов).
Для всех пользовательских занятий в графическом окружении у вас есть программа "терминал" ... с такой вот иконкой ( :lol: ... что-то у меня великовата иконка получилась :-o ):
Изображение
Вы можете открыть в терминале сколько угодно закладок для работы, да и самих терминалов несколько экземпляров ... на разных рабочих столах.
По SDK - да, я хочу поработать с этим пакетом - меня просто бесит, что не могу войти в SU на моем Android 4.4.2! Пробовал и через ADB, и эмулятор терминала, и кучу других программ - все без толку! Придется учиться.
ADB и есть основное средство из SDK подключения в терминальном режиме через USB к вашему Android.
Но ваша проблема хуже, чем она вам кажется: всё зависит от производителя (и модели) Android-устройства, к которому вы хотите получить root-доступ.
Он может просто отсутствовать, быть закрыт производителем (очень часто).
И тогда получение root-доступа - это уже занятие хакерское, "на грани фола", ... иногда это просто оказывается невозможным, а иногда приводит к полной неработоспособности Android-устройства.

Вот здесь в форуме даже тема была с экспериментами на эту тему: Android - root-права и другие особенности

fel123
Интересующийся
Сообщения: 6
Зарегистрирован: 06 апр 2015, 21:48
Контактная информация:

Re: Посоветуйте Linux

Непрочитанное сообщение fel123 » 23 апр 2015, 13:03

Olej, сердечно благодарен Вам за науку, все эти сведения мне очень помогут. По натуре я системщик, всегда хочу разобраться в деталях. Программирование начинал в 69-м году на польском аналоге американской PDP-8, в системных кодах, с набором команд на переключателях, потом - ассемблер, форч, и наконец бейсик.
Все по верхушкам, по образованию то я военный радиотехник! Сейчас я хочу понять систему команд андроидного ядра, вот и мучаюсь. Mint поставил с утра, вроде все хорошо. А Fedora 22 закачал на флешку, но что-то Grub не загружается! Ну и ладно, мне и минта хватит.
Еще раз - спасибо Вам!

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Linux для работы с Android

Непрочитанное сообщение Olej » 23 апр 2015, 13:42

fel123 писал(а):Сейчас я хочу понять систему команд андроидного ядра, вот и мучаюсь.
1. В Android на нижнем уровне стоит самое что ни на есть Linux kernel, в том самом первозданном виде, как и в любом другом дистрибутиве Linux. Если там есть наложенные патчи ядра, то самые минимальные ... такого же объёма, как налагают в любом другом дистрибутиве.

2. Конечно, там есть специфичные модули ядра - драйверы отображения на экран и ввода ... это очень зависит от специфики модели, hardware и производителя. Но и здесь - это стандартная техника написания модулей ядра Linux.

3. А вот в качестве оболочки командного интерпретатора shell они используют (вместо привычных в Linux) малые реализации: busybox и toolbox. Иногда - один, иногда - другой, я видел железки (китайские), в которых одновременно вшиты и busybox и toolbox. busybox - это стандартный проект с версиями, малая командная оболочка, очень интересная структура ... здесь в форуме где-то было. toolbox - это нечто совсем микро, и то, что нагородил уже конкретный производитель железки.

Смотрите на этот предмет темы:
Android как он внутри
Android - root-права и другие особенности
3) Немного про toolbox и busybox. В toolbox команды сильно урезаны по функционалу и даже синтаксис изменен.
В ADB ваши команды busybox будут выглядеть как-то так:

Код: Выделить всё

bash-4.2$ adb shell
# busybox uname -a
Linux localhost 2.6.29 #153 Fri Oct 22 07:57:00 HKT 2010 armv6l unknown
...
# busybox mount -o remount,rw /system
# mount | grep /system
/dev/block/mtdblock2 /system yaffs2 rw 0 0
4. Но на этих низовых уровнях (Linux) приложения Android практически никогда (очень редко) не делаются.
Для того они вводят слой midleware - Java виртуальная машина, выполняющая их приложения.
Особенность в том, что байт-код компилируемый их Java-машиной - Dalvik - отличается от байт-кода Sun JDK и стандарта Java.
(есть программы Linux, транслирующие одно в другое)

Архитектуру Android в очень кратком и понятном изложении см. здесь, например: 1.5. Архитектура ОС Android.

Ответить

Вернуться в «Android»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 7 гостей