Android

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

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

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 01:40

Далее:
Ali писал(а):

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

[ali@(none) ~]$ adb devices                                                                                                                                  
List of devices attached                                                                                                                                     
PocketBook      device                                                                                                                                       
- так смотрим известные adb (подключенные) Android устройства.
А теперь в дополнение к "железному" планшету я подключу (запущу!) вот тот симулятор из SDK, который показывал раньше:

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

[olej@notebook platform-tools]$ ./adb devices
List of devices attached
0123456789ABCDEF        device
emulator-5554   device
т.е. adb теперь видит 2 равноценных Android устройства, причём 2-е виртуальное мы уже вскользь видели где размещено, вот он этот Android:

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

[olej@notebook MyAvd0.avd]$ cd ~/.android/avd/MyAvd0.avd
[olej@notebook MyAvd0.avd]$ du -hs
42M	.

И мы можем с ним экспериментировать равнозначно как и с реальным планшетом:

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

[olej@notebook platform-tools]$ ./adb -s emulator-5554 shell
# pwd
/
# ifconfig eth0
eth0: ip 10.0.2.15 mask 255.255.255.0 flags [up broadcast running multicast]
# ping 192.168.1.20
PING 192.168.1.20 (192.168.1.20) 56(84) bytes of data.
64 bytes from 192.168.1.20: icmp_seq=1 ttl=255 time=86.5 ms
64 bytes from 192.168.1.20: icmp_seq=2 ttl=255 time=2.66 ms
64 bytes from 192.168.1.20: icmp_seq=3 ttl=255 time=2.38 ms
^C
--- 192.168.1.20 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2006ms
rtt min/avg/max/mdev = 2.383/30.530/86.548/39.610 ms
# exit
- IP 10.0.2.15 моему симулятору Android присвоил, наверное, SDK по дефаулту, и на IP 192.168.1.9 хоста Linux где этот симулятор крутится - ping ходит...
Дальше: настраивайте сеть (чего не хватает), устанавливайте приложения, работайте в Android :lol:

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 01:52

Но меня пока интересует реальный планшет (он всё ещё висит на USB-шнурке)... я в нём (пальцем, сенсорно :lol: ) устанавливаю разрешение: "Выберите копирование файлов на компьютер или с компьютера" и ...

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

[olej@notebook HISTORY]$ tree /media/HSG/
/media/HSG/
├── Android
│   └── data
│       └── com.cooliris.media
│           └── cache
│               ├── geocoder-cache
│               ├── hires-image-cache
│               ├── hires-image-cache2394695649710025913_1024.cache
│               ├── local-album-cache
│               ├── local-album-cachechunk_0
│               ├── local-album-cacheindex
│               ├── local-image-thumbs
│               ├── local-image-thumbschunk_0
│               ├── local-image-thumbsindex
│               ├── local-meta-cache
│               ├── local-meta-cachechunk_0
│               ├── local-meta-cacheindex
│               ├── local-skip-cache
│               ├── local-video-thumbs
│               ├── local-video-thumbsindex
│               ├── picasa-thumbs
│               └── picasa-thumbsindex
├── Books
├── DCIM
│   └── 100ANDRO
├── download
├── ICQ
│   └── ImageCache
│       ├── 1258497285
│       ├── 3619657
│       └── 65293013
├── recording11928.mp3
├── recording11929.mp3
├── recording22574.mp3
├── recording39226.mp3
├── recording57182.mp3
├── recording62259.mp3
└── TunnyBrowser
    └── Bookmarks
        └── 2011-05-29 17.04.02.html

20 directories, 19 files

- мой Android примонтирован к Linux в /media, точно так как это происходит с USB-флешками...
Смотрю mount со стороны Linux и со стороны Android (по adb):

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

[olej@notebook HSG]$ mount
/dev/mapper/vg_notebook-lv_root on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext3 (rw)
/dev/sda4 on /mnt/arch type ext3 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)
gvfs-fuse-daemon on /home/olej/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=olej)
/dev/mmcblk0p1 on /media/33D6-5316 type vfat (rw,nosuid,nodev,uhelper=devkit,uid=500,gid=500,shortname=mixed,dmask=0077,utf8=1,flush)
/dev/sdb on /media/HSG type vfat (rw,nosuid,nodev,uhelper=devkit,uid=500,gid=500,shortname=mixed,dmask=0077,utf8=1,flush)

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

# mount
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
tmpfs /broadcasting tmpfs rw,size=1024k 0 0
/dev/block/mtdblock2 /system yaffs2 ro 0 0
/dev/block/mtdblock5 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock4 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname
Я пока не соотнесу какие части файловой системы Android подмонтировались к /media/HSG/ (тем более, что там, в Android) пока воткнута SD карта, которая усложняет картину... но я пока только понимаю, что я могу так элементарно перегонять файлы (и целые каталоги) меж Linux и Android простейшим F5 в mc... как я это только-что сделал с ранее скачанным приложением навигатора OsmAnd-development.apk на картинке...
Вложения
.png
(110.63 КБ) 9774 скачивания

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 02:18

Olej писал(а):Дальше: настраивайте сеть (чего не хватает), устанавливайте приложения, работайте в Android :lol:
Но ещё противнее, что это виртуальное одоробло с совершенно диким (в моей сетке) IP 10.0.2.15 - пошёл гулять по сети...
Теперь ему только остаётся доставлять приложения из маркета :lol:
Вложения
MyAvd0-2.png
знакомая картинка?
(162.48 КБ) 9769 скачиваний

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 03:32

Olej писал(а): Знакомый (из POSIX) набор команд-утилит (ls, pwd, cd, ifconfig, ...), но это совершенно другие (по исполнению) утилиты, в отличие от привычных в десктоп исполнении, где они из GNU реализации... Первая отличительная особенность в том, что у них отсутствует опция справки об особенностях утилиты:

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

# ifconfig --help
--help: No such device
# ls --help
--help: No such file or directory

Возможно это связано с желанием сэкономить в размерах программ-утилит.
И это уже само по себе достаточно неприятно (или может оно так и задумано было? :lol: ), потому что в отношении сетевых интерфейсов можно только угадывать их названия, вот на реальном планшете с работающим WiFi:

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

# ifconfig eth0
eth0: No such device
# ifconfig lo
lo: ip 127.0.0.1 mask 255.0.0.0 flags [up loopback running]
# ifconfig wlan0
wlan0: Cannot assign requested address
# ifconfig wlan0 up 192.169.1.100
# ifconfig wlan0
wlan0: ip 192.169.1.100 mask 255.255.255.0 flags [up broadcast]
- остаётся только угадывать какие там интерфейсы, как они называются и как нумеруются...

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 03:42

Ну, и последнее на сегодняшнюю ночь :lol: упражнение :lol: :

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

[olej@notebook platform-tools]$ ./adb connect 192.168.1.21
connected to 192.168.1.21:5555
192.168.1.21 - это Android-x86 работающий в виртуальной машине под VirtualBox на другом хосте в LAN:

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

[olej@notebook platform-tools]$ ./adb devices
List of devices attached
0123456789ABCDEF        device
emulator-5554   device
192.168.1.21:5555       device

[olej@notebook platform-tools]$ ./adb -s 192.168.1.21:5555 shell
root@android:/ # u_n_a_m_e -a
Linux localhost 2.6.38-android-x86-eeepc+ #2 SMP PREEMPT Mon Jun 27 18:43:50 CST 2011 i686 GNU/Linux
root@android:/ # ifconfig eth0
eth0: ip 192.168.1.21 mask 255.255.255.0 flags [up broadcast running multicast]
root@android:/ # whoami
root
root@android:/ # exit
( :!: там в команде u_n_a_m_e сделаны "разрежения", потому что настройки "якобы безопасности" этого хостинга не позволяют вставлять такие команды ... ну, нету слов, блин :twisted: :!: )

Итак, вот вам все-любые удовольствия удалённого подключения к Android: нативное устройство, симулятор из SDK, Android в виртуальной машине.

У adb ещё множество опций (загрузка туда и сюда ;-) файлов и каталогов, установка пакетов программных в удалённое устройство, ...), об этом смотрим так:

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

[olej@notebook platform-tools]$ ./adb --help 
Android Debug Bridge version 1.0.26
...
- там дальше следуют на 2 терминальных экрана альтернатив...
А о том как это работает и что из этого можно получить - это посмотрим попозже.

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 04:22

Вот ещё из приятных неожиданностей ;-) (имеется в виду top):

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

[olej@notebook platform-tools]$ ./adb -s 0123456789ABCDEF shell
# ifconfig wlan0
wlan0: ip 192.168.1.22 mask 255.255.255.0 flags [up broadcast running]
# top
User 5%, System 10%, IOW 0%, IRQ 0%
User 19 + Nice 0 + Sys 33 + Idle 273 + IOW 0 + IRQ 0 + SIRQ 0 = 325

  PID CPU% S  #THR     VSS     RSS PCY UID      Name
  989   8% S    52 230712K  33276K  fg system   system_server
 2596   6% R     1    864K    384K  fg root     top
  951   1% S     4   3376K    188K  fg root     /sbin/adbd
  511   0% S     1      0K      0K  fg root     usb_mass_storag
    5   0% S     1      0K      0K  fg root     events/0
...

Ali
Писатель
Сообщения: 57
Зарегистрирован: 08 окт 2011, 08:00
Контактная информация:

Re: Android

Непрочитанное сообщение Ali » 17 ноя 2011, 15:57

Hello_World, однако ;)
2.png
(173.53 КБ) 9773 скачивания
Книги на русском:
Google Android. Программирование для мобильных устройств (+ CD-ROM)
Автор: Алексей Голощапов
Издательство: БХВ-Петербург
Серия: Профессиональное программирование
ISBN 978-5-9775-0562-8; 2011 г.

Разработка приложений для Android
Pro Android 2
Автор: С. Хашими, С. Коматинени, Д. Маклин
Переводчик О. Сивченко
Издательство: Питер
ISBN 978-5-459-00530-1, 978-1430226598; 2011 г.

Android за 24 часа. Программирование приложений под операционную систему Google
Android: Application Development In 24 Hours
Автор: Лорен Дэрси, Шейн Кондер
Издательство: Рид Групп
Серия: Профессиональные компьютерные книги
ISBN 978-5-4252-0318-2; 2011 г.

Первые две есть в интернетах.

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 16:13

Ali писал(а):Hello_World, однако ;)
Ага :lol:
my1.png
(67.97 КБ) 9797 скачиваний
С той разницей, что у вас оно собрано в Eclipse, а у меня в IntelliJ IDEA :lol:
IntelliJ IDEA 10.5.png
IntelliJ IDEA 10.5.png (78.71 КБ) 12346 просмотров

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 16:18

Ali писал(а):Hello_World, однако ;)

Книги на русском:
1. Про разработку именно приложений для Android, наверное, стоило бы отдельную тему вынести?
P.S. не дожидаясь (чего? ;-) ) создал такую тему в разделе про Linux-софт: viewtopic.php?f=6&t=1560

2. Книги я листал (бумажные) все 3 (а больше и нет, насколько я знаю) - это всё о том как сделать и как обращаться с пользовательскими приложениями.

А вот о том, как Linux слой укрыт под Android, как пользоваться SDK, как установить вручную приложения .apk ... и вообще что ещё можно вычудить с Android - вот такой информации в публикациях почти нет.
P.S.
На хабрахабре, где обычно всё можно найти, при ~1000 ссылках на Android - сплошная болтовня! :-o :evil:
P.P.S.
Вот безалаберная, но любопытная публикация: HSG X5A MID Android Tablet - http://kenzo.net.od.ua/droid/
X5A он же G11 - это мой планшет для экспериментов: http://www.pandawill.com/g11-android-2- ... -case.html - дёшево и не жалко :lol: , но то, что он вытворяет, можно легко, думаю, повторить, на любом девайсе, в том числе и на симуляторе. Особенно любопытно там подключение 3G беспроводного модема AnyData ADU-510A - я в своё время даже купил не нужное мне такое устройство для приручения под Linux, теперь можно и Android приручать.
Кстати (что интересно!) - это устройство X5A легко монтирует USB флешки подтыкаемые на USB-разъём ... он их, похоже, считает разновидностью SD карты, интересно: с них файлы-приложения .apk можно руками грузить?

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

Re: Android

Непрочитанное сообщение Olej » 17 ноя 2011, 18:52

Olej писал(а): - сам SDK немаленький ... правда это после нужных мне доустановок Manager-ом.
1. после обновления до Android 4.0 внешний вид и использование менеджера SDK поменялся:
Android SDK Manager .png
Android SDK Manager .png (75.47 КБ) 12311 просмотров
2. т.е. менеджер SDK (установки и обновления) теперь отдельно, а менеджер симуляторов (Virtual Device Manager) - отдельно, отдельным окном, запускаемым из вот того меню Tools...
Android Virtual Device Manager .png
Android Virtual Device Manager .png (28.85 КБ) 12339 просмотров
3. как легко видеть из картинок, можно доустановить SDK разных релизов, а в Virtual Device Manager насоздавать сколько угодно конфигураций, и разных версий (как на картинке), и разных параметров (например, редактировать и создать ему SD карту).
Сами виртуальные девайсы ищем в ~/.android/avd :

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

[olej@nvidia avd]$ ls -l  ~/.android/avd 
итого 16
drwxrwxr-x. 2 olej olej 4096 Ноя 17 14:54 1.avd
-rw-rw-r--. 1 olej olej   53 Ноя 17 13:55 1.ini
drwxrwxr-x. 2 olej olej 4096 Ноя 17 18:00 2.avd
-rw-rw-r--. 1 olej olej   52 Ноя 17 18:00 2.ini
а образ SD карты - sdcard.img (причём он такого размера, как вы его заказали в свойствах AVD, даже если он пустой):

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

[olej@nvidia 2.avd]$ pwd
/home/olej/.android/avd/2.avd
[olej@nvidia 2.avd]$ ls -l 
итого 104752
-rw-rw-r--. 1 olej olej       203 Ноя 17 18:00 config.ini
-rw-rw-r--. 1 olej olej 104857600 Ноя 17 18:00 sdcard.img
-rw-rw-r--. 1 olej olej   2401344 Ноя 17 18:00 userdata.img
4. приятная особенность: весь полученный каталог SDK можно сдуть по сети на другой хост, и там будет свой независимый SDK (я вот это показываю уже с другого хоста LAN), потому как после всех доустановок SDK становится вещь немалая:

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

[olej@nvidia ~]$ du -hs ~/android-sdk-linux_x86 
1,2G	/home/olej/android-sdk-linux_x86
и устанавливать его с нуля из девелоперского URL становится напряжным.

Ответить

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

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

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