Az Android SDK hibájának orvoslása Unix alatt

Android: “nem látszik a készülékem a DDMS-ben” hiba megoldása

A legújabb Motorola készülék, a ME511 (FLIPOUT) tesztelése során furcsa jelenséggel találkoztam. Androidos készülék tesztelésénél abban szerencsés helyzetben vagyunk, hogy az SDK tartalmaz egy eszközt, melynek segítségével képernyőfotókat készíthetünk a telefonunkon épp futó eseményekről. Ehhez az .../android-sdk/tools mappában lévő ddms nevű programot kell elindítanunk (Davlik Debug Monitoring System). Amikor képeket akartam készíteni a rendszerről, a segédalkalmazás nem találta a készüléket, helyette egy kérdőjelekkel teli sort kaptam.

Megpróbáltam elindítani rajta egy alkalmazást Eclipse alól device debug módban, ott is sikertelen volt a művelet. Ubuntut használok, ez a módszer így csak linuxos gépeken működik, a probléma Windowsos megoldása egyszerű: csak a drivert kell újratelepíteni, Macnél pedig (állítólag) nem lép fel ez a hiba (gyakorlatilag sem - Bocha). Egy kis utánaolvasással megtaláltam a megoldást: egyrész fel kell vennünk egy új sort az Android szabályokat tartalmazó fájlba. Ez a fájl az /etc/udev/rules.d mappában lévő 51-android.rules névre hallgat (ha ez hiányzik, nem szabad megijedni, egyszerűen root joggal létre kell hozni egy újat). Ebbe létre kell hozni egy új sort, amely tartalmazza a készülékünk gyártójának a vendor ID-jét. Ez gyártónként változik, a lista megtalálható a hivatalos Android dev oldalon. A következő sort kell beleírni a fájlba, tetszőleges helyre: SUBSYSTEM=="usb", SYSFS{idVendor}=="xxxx", MODE="0666".

Ez még nem oldja meg teljesen a problémánkat, néha újra kell indítani az adb servert (Android device bridge, ennek segítségével menedzselhetjük az emulátort és/vagy a csatlakoztatott készüléket). Ehhez három parancsot kell rootként futtatni:
./adb kill-server
service udev stop
./adb start-server
.

Ez után az ./adb devices paranccsal kilistázhatjuk a készülékeinket, itt már látnunk kell a sajátunkat. Ha gyakran szükség van az adb-re, érdemes belőle egy futtatható scriptet készíteni, így nem kell minden egyes alkalommal begépelni a parancsokat.

holdmester

Hirdetés