Image
29.6.2016 0 Comments

Programujeme pre Android /2.časť

Meškanie tohto seriálu voči dátumu vydania Android 1.0 SDK (Software Development Kit) je viac ako 5 rokov. Z dôvodu zníženia tohto časového sklzu musíme postupovať rýchlo čo bude badateľné najmä v prvých článkoch. Aby sme však dali šancu aj začiatočníkom, na internetovej stránke autora (softengine.sk) budeme uvádzať ďalšie detaily a okrem toho v rámci nej vytvoríme interaktívnu časť umožňujúcu klásť otázky.

V tomto článku si predstavíme IDE (Integrated Development Environment), ktoré sú určené na vývoj, resp. majú súvis s vývojom aplikácií pre Android. Inštaláciu jednotlivých IDE sme realizovali na novo nainštalovanom OS Linux Ubuntu 12.04.3 LTS (precise) v základnej konfigurácii bez vopred nainštalovaných závislých balíčkov.

ADT (Android Developer Tools)

ADT Bundle je balík vývojárskych nástrojov, ktorý obsahuje:

1. IDE Eclipse + ADT plugin,

2. SDK a Platform-nástroje – vývojárske a ladiace nástroje: android (Android SDK Manager), emulator, monitor (Android Debug Monitor), ddms (Dalvik Debug Monitor Server), sqlite3, nástroje závislé na Android platforme: adb (Android Debug Bridge),

3. najnovšiu Android platformu a systémový obraz tejto platformy potrebný pre emulátor.

Zo stránky developer.android.com/sdk/index.html stiahneme súbor pre konkrétny OS (pre 64-bitový Linux – adt-bundle-linux-x86_64-20131030.zip). Súbor rozbalíme a môžeme spustiť IDE: ./<adt>/eclipse/eclipse (<adt> je cesta k zložke, do ktorej sme súbor rozbalili). Spustenie IDE by malo byť úspešné po doinštalovaní chýbajúcich (závislých) balíčkov: openjdk-7-jdk, lib32stdc++6, ia32-libs.

V tomto okamihu môžeme začať programovať v jazyku Java a zostavovať (build) bytecode pomocou Java kompilátora (javac). V prípade všeobecných Java aplikácií bytecode (súbory .class) vykonáva virtuálny stroj JVM (Java Virtual Machine), v rámci ktorého pracuje runtime kompilátor JIT (Just in Time Compiler). V prípade aplikácií určených pre Android bytecode (súbory .dex) vykonáva virtuálny stroj Dalvik VM, ktorý je súčasťou OS nainštalovaného na fyzických zariadeniach. Implementáciou Dalvik VM je aj emulátor, ktorý možno spúšťať priamo z IDE.

ADB

Tento nástroj je určený na komunikáciu s emulátorom, resp. fyzickými zariadeniami. Spárovanie fyzického zariadenia (v našom prípade smartfónu) s PC realizujeme takto:

1. Na smartfóne povolíme USB ladenie: Settings > Apps > Development > USB Debugging,

2. Získame identifikátor výrobcu (idVendor) a zariadenia (idProduct):

lsusb

vo výpise hľadáme reťazec napr.: Bus 001 Device 002: ID 04e8:689e Samsung Electronics Co., Ltd GT-S5670 [Galaxy Fit]

3. vytvoríme súbor 51-android.rules:

sudo vi /etc/udev/rules.d/51-android.rules

do súboru vložíme reťazec: SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="689e", MODE="0666", GROUP="plugdev"

zadáme príkazy:

cd <adt>/sdk/tools
./android update adb
cd ../platform-tools
./adb kill-server
./adb start-server

4. upravíme súbor adb_usb.ini:

vi ~/.android/adb_usb.ini

na koniec súboru doplníme reťazec: 0x04e8

zadáme príkazy:

sudo service udev restart
./adb kill-server
./adb start-server
./adb devices

výstup posledného príkazu by mal byť nasledujúci:

List of devices attached
S583004196ecd   device

Obr. 1 Grafické prostredie IDE Eclipse

Existujúcu aplikáciu importujeme v menu File > Import... > Android > Existing Android Code Into Workspace. Cieľové zariadenie, na ktorom má Eclipse spustiť (run) zostavenú aplikáciu, nastavujeme v menu Run > Run Configurations... > Android Application > Target.

Nástroje potrebné na preklad kódu napísaného v jazyku C++ sú súčasťou balíka NDK (Native Development Kit). Balík určený pre konkrétny OS (pre 64-bitový Linux – android-ndk-r9c-linux-x86_64.tar.bz2) stiahneme zo stránky developer.android.com/tools/sdk/ndk/index.html. Po jeho rozbalení môžeme začať používať jednotlivé nástroje, medzi ktoré patrí aj skript ./<ndk>/ndk-build (<ndk> je cesta k zložke, do ktorej sme súbor rozbalili). ndk_build používa na vytvorenie zdieľaných knižníc (.so) štandardný make. Zdieľané knižnice sú automaticky pribaľované k .apk balíčkom inštalovaným na zariadenie. Skript ndk_build možno spúšťať ručne, alebo automaticky v rámci Eclipse a to nastavením v rámci menu: Project > Properties > Builders > New... – vytvoríme novú položku (musí byť prvá v poradí), v rámci ktorej nastavíme cestu (location) k súboru ndk-build.

IntelliJ IDEA Community Edition a Android Studio (AS)

Predstavenie prostredí IntelliJ IDEA (JetBrains) a AS (Google) v spoločnom bloku nie je náhodou. Zjednodušene môžeme povedať, že v súčasnosti sú tieto dve IDE až na pár výnimiek identické, pričom AS vychádza z IntelliJ IDEA. Obe kolaburujúce strany vyhlasujú, že plnohodnotne podporujú vývoj pre Android. Dá sa však predpokladať, že Google v budúcnosti zameria svoje úsilie viac na AS. Z toho možno usúdiť, že pre tých, ktorí plánujú programovať všeobecne zamerané aplikácie, je určené IDE IntelliJ IDEA. Naopak tí z nás, ktorí plánujeme programovať iba pre Android, by sme mohli s výhodou využiť špecifické odlišnosti AS.

Balík IntelliJ IDEA pre konkrétny OS (pre Linux – ideaIC-13.0.1.tar.gz) stiahneme zo stránky jetbrains.com/idea/download/#linux. Súbor rozbalíme a môžeme spustiť IDE: ./<idea>/bin/idea.sh (<idea> je cesta k zložke, do ktorej sme súbor rozbalili). Spustenie IDE by malo byť úspešné po správnom nastaví cesty k JDK (Java Development Kit):

export JAVA_HOME=“/usr/lib/jvm/java-1.7.0-openjdk-amd64/“

(premennú je vhodné definovať aj v rámci /etc/environment)

Pre automatické zostavovanie C++ kódu musíme nastaviť:

1. cestu k zdieľaným knižniciam v menu: File > Project Structure... > Modules > Android > Native libs directory,

2. parametre zostavovania pomocou ndk-build v menu: File > Settings > External Tools > Add (+),

3. spustenie ndk-build pred javac v menu: Run > Edit Configurations... > General > Before launch: > Add (+) > Run External tool.

Balík AS pre konkrétny OS (pre Linux – android-studio-bundle-132.893413-linux.tgz) stiahneme zo stránky developer.android.com/sdk/installing/studio.html. Súbor rozbalíme a môžeme spustiť IDE: ./<studio>/bin/studio.sh (<studio> je cesta k zložke, do ktorej sme súbor rozbalili). Spustenie AS a konfigurácia zostavovania C++ kódu je totožná s konfiguráciou v IDE IntelliJ IDEA.

Obr. 2 Grafické prostredie IDE Android Studio s aplikovanou schémou Darcula

 

 

Zobrazit Galériu
Autor: Marek Sopko

Nechajte si posielať prehľad najdôležitejších správ emailom

Mohlo by Vás zaujímať

Ako na to

Tipy a triky: Ako na snímku obrazovky na akomkoľvek počítači s Windows?

02.12.2016 00:13

Ak snímky obrazovky robíte často apotrebujete napríklad funkcie na posun stránok alebo snímanie zobrazenia pri vyššom rozlíšení displeja, zrejme používate nejakú špecializovanú aplikáciu. Väčšina použ ...

Ako na to 1

Tipy a triky: Ako aplikácii prednastaviť spúšťanie s administrátorskými právami?

30.11.2016 00:10

Väčšina aspoň trochu skúsenejších používateľov vie, že aj keď máte na operačnom systéme Windows vytvorený administrátorský účet, aplikácie pre bezpečnosť nefungujú vždy splnými administrátorskými práv ...

Ako na to 2

Tipy a triky: Ako vypnúť uzamykaciu obrazovku vo Windows 10?

29.11.2016 00:10

Rozčuľuje vás, že pred každým prihlásením doúčtu vášho počítača musíte prejsť uzamykacou obrazovkou? Windows 10 na tejto obrazovke ukazuje čas,dátum anejakú zaujímavú fotografiu zrôznych kútov sveta. ...

Žiadne komentáre

Vyhľadávanie

Kyocera - prve-zariadenia-formatu-a4-s-vykonom-a3

Najnovšie videá