A következő címkéjű bejegyzések mutatása: Android. Összes bejegyzés megjelenítése
A következő címkéjű bejegyzések mutatása: Android. Összes bejegyzés megjelenítése

2013. november 14., csütörtök

Könyvajánló: Android-alapú szoftverfejlesztés

Android-alapú szoftverfejlesztés
A Budapesti Műszaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai Tanszékén működő Alkalmazott Mobil Kutatócsoport (Amorg) kiemelt figyelmet fordít a hazai mobiltechnológia-oktatás folyamatos fejlesztésére. Munkájuknak köszönhetően lehetővé vált, hogy szélesebb rétegek ismerkedjenek meg a legnépszerűbb mobilplatformokkal, és naprakész tudásuk legyen a legújabb technológiákat illetően. Évente csak az egyetemről több mint 500 hallgató vesz részt a kurzusaikon. Az Amorg tagjai a tanszék népszerű Alkalmazott Informatika sorozatának keretében ezúttal egy hiánypótló művel lepik meg az okostelefonok fejlesztése iránt érdeklődőket. Bátran állíthatjuk, hogy Android platform világszinten az egyik legnépszerűbb és legelterjedtebb mobilplatformmá nőtte ki magát, éppen ezért a könyv elolvasásával megszerezhető ismeretek hosszú távú tudást jelentenek a felhasználók számára. A könyv elején a mobilpiac aktuális állapota és az Android platform története jelenik meg, ezt az Android különféle technológiáinak ismertetése követi. Megismerhető az Android platform szerkezete, az alkalmazáskomponensek szerepe, illetve részletesen megismerhető a felhasználói felület készítése, valamint olyan technikai részletek, mint a komponensközi kommunikáció, a perzisztenciatámogatás, a helymeghatározás és a térképkezelés, az alacsony és a magas szintű hálózati kommunikáció, valamint a kapcsolódó technikák, a multimédia-kezelés, a személyes adatok kezelése, az Android szolgáltatásmodellje, a szenzorok támogatása, sőt a natív programozás is. A könyv végén megtalálhatók a legújabb Android platform által bevezetett technológiai újdonságok, továbbá a mindenütt foglalkozik a táblagépekre irányuló fejlesztésekkel is.
2012. Szak Kiadó Kft. ISBN: 9789639863279
Az egyes fejezetek kiemelt figyelmet fordítanak a megértést segítő példákra és gyakran az olyan megoldásokra is, amelyek önálló alkalmazásként is megállnák a helyüket. A könyv szerzői az Android platformmal már a legelső SDK megjelenése óta foglalkoznak, szaktudásukat állandóan szinten tartják, és folyamatos résztvevői a hazai és nemzetközi ipari kutatásoknak és fejlesztéseknek, így széles körű tapasztalattal rendelkeznek. A könyv gondosan válogatott témakörei, szakszerű szerkesztése és a válogatott példák lehetővé teszik, hogy a mindennapi munka során is alkalmazhassuk, és a részletes magyarázatok segítségével a technológia működését is könnyen megérthessük. A szerzők törekedtek arra, hogy a könyvben szereplő kódrészek használatát lehetőség szerint önálló alkalmazásokon keresztül is bemutassák, ezek a példák az előszóban található hivatkozáson keresztül érhetők el.

További könyvajánló olvasható itt: CodeGuide

2012. május 13., vasárnap

Asus Transformer Prime, az enyém vagy!


Amióta az Apple megmutatta a világnak, hogy hogyan kell táblagépet készíteni az iPad személyében, azóta érzek komoly birtoklási vágyat egy ilyen kütyü iránt. Ez az érzés immár két éve van velem és egyre inkább csak erősödik. Vagyis, csak erősödött, mivel már két hete boldog tulajdonosa vagyok egy Asus Transformer Prime készüléknek. Hogy milyen érzés? Egész kellemes.
Hosszú türelmi időnek vetettem végett, mivel úgy éreztem lassan minden komolyabb piaci szereplő megtanul táblagépet készíteni, és így már érdemes nekem is beszerezni egyet. Alapvetően az Android OS rendkívül szimpatikus a számomra és a Windows-os ökoszisztémámba is leginkább ez a rendszer illeszthető be (bocs Apple), így egyértelműen csak a droidos tabletek kínálatából szemezgettem. Első körben még csak 50-60 ezer forintos árcédulákat nézegettem, de igen hamar rájöttem, hogy nagy csalódás lenne ez a kategória a számomra, így hát gondoltam egy nagyot és berendeltem a Prime-t. A kütyüről sokat nem írnék, hiszen minden komolyabb portál foglalkozott vele:
  1. Asus Transformer Prime - méregdrága autobot
  2. ASUS Transformer Prime TF201 táblagép teszt
  3. Kipróbáltuk: ASUS Eee Pad Transformer Prime
  4. Asus Transformer Prime, az erőmű (frissítve ICS)
Röviden: "A fémes készülékházzal az ultra vékony és könnyű Transformer Prime új mércét állít a tabletek dizájnában. 8,3 mm vékony és 586 gramm, ezzel a Transformer Prime újra definiálja a mobil élet szabályait, így rendkívül könnyen használható és szállítható útközben".

Asus Transformer Prime
Számomra a dokkolós kialakítás volt az ami első látásra szerelem a Prime esetében, és azt gondolom enélkül felesleges is megvásárolni ezt a modellt. Persze azért akadnak gondok is, nincs 3G és gyenge a WiFi és GPS vétel. Erről is egészen sok írás született, egy példa: Asus Transformer Prime - gyengébb GPS jelszint.
A gondok ellenére akkor miért választottam a Prime-ot? Elsősorban azért mert mindezek ellenére még mindig az egyik legprofibb és legjobb minőséget nyújtó androidos tablet, másrészt az Asus Transformer Pad Infinity még nem kapható nálunk és már nem bírtam tovább várni :) Kicsit komolyabbra fordítva a szót, számomra a 3G nem volt fontos és azt hiszem nem véletlen, hogy az Asus is kihagyta ennél a modellnél. Egyszerűen nem az a típusú eszköz, amit az ember állandóan magánál tart. A GPS probléma valós, bár számomra megint csak nem volt túl fontos ez az opció, igaz mára már külön külső GPS antennát ad a probléma orvosolására az Asus:
Érdemes beregisztrálni az Asus-nál és igényelni a GPS Extension Kit-et, mivel nekem 7-8 napon belül megküldték Csehországból. Természetesen ingyen. Szóval most egy nagy piros pont az Asus-nak. A WiFi vétel valóban gyengébb, de nekem még problémám nem adódott belőle. Bár alacsony jelszintnél, nem lát, nem hal, nem beszél (ilyen nekem még nem volt). Igaz, ilyenkor az ember tud dobni a telefonjáról egy WiFi hotspot-ot és megint minden kerek. A dokkoló is elég jó, bár a tapipad nem notebook szint, de nem is vártam tőle. Szóval összességében teljesen elégedett vagyok az eszközzel. Csak hát az ára...az ára is teljesen rendben van, én a mobilx webáruházból rendeltem meg 170 ezerért. Meglepetésemre ICS-vel érkezett annak ellenére, hogy az adatlapján még Honeycomb szerepelt. Talán kicsit sokba kerül, de tulajdonképpen egy ultrakönnyű apró gépet kapunk a pénzünkért, ami reményeim szerint teljes mértékben képes lesz kiváltani a noteszgépemet, de majd erről később írok. Azoknak akiknek fontos a 3G a következő modelleket mindenképpen tapizzák meg:
  1. Asus Transformer Pad TF300T és TF300TG - variációk egy témára 
  2. Mobilarena TV: Kezünkben az Asus Transformer Pad TF300
  3. Mobilarena TV: Asus Transformer Pad Infinity bemutató
  4. ASUS PadFone - matrjoska baba
Zárásként csak azt mondhatom, hogy a rossz hírek ellenére én csak ajánlani tudom a Prime-ot, egy igazán érdekes és sokoldalú táblagép. DE, ha nem vagy bütykölős típusú, nem tudod mi az az Android, és nem akarsz fájlokat másolni, vagy nem is tudod mi az a fájl, akkor mindenképpen iPad 2 vegyél mert  100-120 ezres árával a legjobb ár/érték arányú masina és még ráadásul nagyon menő is!

2012. február 26., vasárnap

Android alapok (1)


Senki nem születik úgy, hogy mindent tud, így ez az írás azokon az alapvető fogalmakon kíván végigmenni amelyek megismerése nélkül nehezen képzelhető el az Android fejlesztés. Én magam sem vagyok Android Guru, sőt! Mégis úgy gondolom, hogy hasznos lehet másokkal is megosztanom mindazt a tudást amit innen-onnan már összeszedtem. Ha Te Android Guru vagy akkor inkább ezt a részt hagyd ki, vagy írj jobbat... :)

Az Android platform szerkezete

Távolról tekintve a platform felépítése egyszerű és világos. A vörös színnel jelölt rész a Linux kernel, amely tartalmazza: a hardver által kezelendő eszközök meghajtó programjait. Ezeket azon cégek készítik el, amelyek az Android platformot saját készülékükön használni kívánják, hiszen a gyártónál jobban más nem ismerheti a mobil eszközbe integrált perifériákat. A kernel adja a memória kezelését, a folyamatok ütemezését és az alacsony fogyasztást elősegítő teljesítmény-kezelést is. Főként C és Assembly nyelven íródott.
Az Android platform szerkezete.
A Linux kernelen futnak a zöld részben található programkönyvtárak/szolgáltatások, mint például: libc, SSL, SQLite, stb … ezek C/C++ nyelven vannak megvalósítva. Ezekre épül a Dalvik virtuális gép, amely nem kompatibilis a Sun virtuális gépével, teljesen más az utasítás készlete, és más bináris programot futtat. A Java programok egy ún. Dalvik Executable formátumba fordítódnak, amelynek kiterjesztése .dex. Ennek a mérete kisebb mint a forrásul szolgáló .class állományok mérete, mert a több Java fájlban megtalálható konstansokat csak egyszer fordítja bele a Dalvik fordító. 
A kék színnel jelölt részekben már csak Java forrást találunk (Application Framework). Java forrást a virtuális gép futtat, ez adja az Android lényegét. Ez maga az Android OS. Ez biztosítja a különféle funkciók megvalósítását: ablakkezelő, erőforrás kezelő, stb. A virtuális gép akár teljesen elrejti a Linux által használt fájlrendszert, és csak az Android Runtime által biztosított fájlrendszert láthatjuk. Majd legfelül helyezkednek el a felhasználó számára látható programok: home screen, böngésző, telefon alkalmazás, névjegyalbum, minden ami a telefonra feltelepítve érkezik vagy mi töltünk le a Market-ből.

Felügyelt kód

Az Android platformon alkalmazások fejlesztéséhez általánosan a Java nyelvet használhatjuk (SDK - Standard Development Kit), azonban alacsonyabb szintű funkciók eléréséhez lehetőségünk van natív kódot is készíteni (NDK - Native Development Kit). A natív kód hívásához használhatjuk a JNI-t (Java Native Interface), azonban a rendszer támogatja az osztott könyvtárak (shared libraries) használatát is. A fejlesztés megkönnyítésére lehetőségünk van arra, hogy egy projekten belül elhelyezzük a Java és C++ kódrészeket. A továbbiakban a natív irányt nem emeljük ki, hiszen érvényesek rá a Standard C++ szabályok.
Az Android alkalmazások az ún. „Dalvik” virtuális gépen futnak, mely tulajdonképpen egy átdolgozott, optimalizált Java virtuális gép. A virtuális gép előnye, hogy biztonságossá teszi az alkalmazások futtatását mivel egy alkalmazás összeomlása nem tudja tönkretenni az egész rendszert. Az Android a Java 5 szintaxissal kompatibilis, így használhatunk magasabb szintű nyelvi elemeket is, ellentétben például a Java ME-vel, ahol csak a 3-as nyelvi eszköztár támogatott. A Java nyelv és a Java alkalmazások felügyeltek, így a memóriakezelésért a futtatókörnyezet és a virtuális gép felelős. A memória felszabadításért a GC (Garbage Collector) felelős, azonban ez nem jelenti azt, hogy felelőtlenül bánhatunk az objektumok létrehozásával. Törekedni kell azok folyamatos felszabadítására, hiszen a GC csak a már nem hivatkozott és nem használt objektumok memóriaterületét tudja felszabadítani.

Android alkalmazás felépítése

Egy Android alkalmazás egy vagy több alkalmazás komponensből épül fel:
  • Activity (a program egy "ablaka")
  • Service (háttérben futó szolgáltatás)
  • Content Provider (adatok kezelése)
  • Broadcast Receiver (rendszerszintű eseményekre reagál)
Minden komponensnek különböző szerepe van az alkalmazáson belül. Bármelyik komponens önállóan aktiválódhat. Akár egy másik alkalmazás is aktiválhatja az egyes komponenseket.

Android alkalmazás komponensek.
Activity: egy-egy Activity leszármazott egy-egy képernyő a mobil eszköz kijelzőjén. Egyszerre mindig csak egy Activity látható, de egy alkalmazáshoz több képernyőkép tartozhat, amelyeket futás közben - események hatására - szabadon cserélhetünk. Minden programnak kell legyen egy belépési pontja, amely az az Activity leszármazott, amelyet először mutat meg a felhasználónak. Minden Activity az android.app.Activity osztályból származik le.

Service: sok alkalmazás igényli, hogy bezárt ablakkal is képes legyen futni a háttérben, ezt szolgáltatásként megteheti, egyszerűen kell egy Service osztályból leszármazott példány, így marad a programunknak olyan része, amely a felfüggesztett Activity esetén is fut (gondoljunk például egy média lejátszóra). Minden szolgáltatást addig futtat a platform, amíg azok be nem fejeződnek, s a futó alkalmazások képesek hozzákapcsolódni a szolgáltatásokhoz, így képesek vagyunk vezérelni a háttérben futó szolgáltatást. Az android.app.Service osztályból kell öröklődnie.

Content Provider: általában minden alkalmazás tárol adatokat két futás között, hiszen ha felfüggesztés helyett bezárnánk az alkalmazást, akkor elvesznének az addig összegyűjtött adatok. A Content provider (tartalom szolgáltató) komponens feladata egy megosztott adatforrás kezelése. A platformon lehetőségünk van állományokba vagy SQLite adatbázisba menteni adatokat, és ezt segíti a Content Provider, illetve lehetővé teszi, hogy két alkalmazás adatokat cseréljen egymással. A Content provider-en keresztül más alkalmazások hozzáférhetnek az adatokhoz, vagy akár módosíthatják is azokat pl.: CallLog alkalmazás, ami egy Content provider-t biztosít, és így elérhető a tartalom. Az android.content.ContentProvider osztályból származik le és kötelezően felül kell definiálni a szükséges API hívásokat.

Broadcast Receiver: a Broadcast receiver komponens a rendszer szintű eseményekre (broadcast) reagál. Például: kikapcsolt a képernyő, alacsony az akkumulátor töltöttsége, elkészült egy fotó, bejövő hívás, stb. Az alkalmazás is indíthat saját „broadcast”-ot, például ha jelezni akarja, hogy valamilyen művelettel végzett (pl. letöltődött a torrent). Nem rendelkeznek saját felülettel, inkább valamilyen figyelmeztetést írnak ki például a status bar-ra, vagy elindítanak egy másik komponenst (jeleznek például egy service-nek). Az android.content.BroadcastReceiver osztályból származik le; az esemény egy Intent (lásd. később) formájában érhető el.

Komponensek indíthatósága

Az Android rendszer sajátossága, hogy egy alkalmazás el tudja indítani egy másik alkalmazás komponensét is, mellyel magas fokú rugalmasságot tud biztosítani a fejlesztők számára. Vegyünk egy példát. Egy fénykép készítéséhez nem kell új Activity-t készíteni, hanem elegendő a kamera alkalmazás kép készítő Activity-jét meghívni. Hívás után a képet megkapja a hívó alkalmazás és a felhasználónak úgy tűnik, mintha a kamera funkció az alkalmazás része lenne. Hoppá!
Amikor a rendszer egy új komponenst indít, először megnézi, hogy fut-e a komponenset tartalmazó alkalmazás Process-e, ha nem, akkor elindítja. Ezt követően példányosítja a szükséges osztályokat. Például az előző kamera esetén, az egész kamera alkalmazást fel kell éleszteni, ha még nem futott. Androidban tehát egy alkalmazásnak több belépési pontja lehet (nincs egy egyszerű main() függvény).
Egy komponens indításához a rendszer felé egy üzenetet/szándékot (Intent) kell intéznünk, melynek hatására végrehajtódik a kérés. A kérésre válasz is érkezhet, mely eljut az indító félhez. Na de mi is ez az Intent? Egy Intent feladata a külső események kezelése. Minden alkalmazás fel tud iratkozni egy-egy - akár a platform által nyújtott, akár magunk által definiált - külső eseményre, mint a bejövő hívás vagy egy időpont bekövetkezte. Le kell származtatnunk egy saját példányt a BroadcastReceiver osztályból, és meg kell mondanunk, hogy milyen eseményre figyeljen. Ezt megtehetjük az AndroidManifest.xml állományban, vagy akár a program futása közben is. Ha az alkalmazásunk nem fut, a figyelt események bekövetkeztekor a platform gondoskodik az elindításról.

Egy androidos projekt felépítése

Egy Android projekt nagyjából úgy épül fel, mint egy átlagos Java projekt, a Java osztályok a megszokott java kiterjesztésű fájlokban vannak, a megszokott csomagstruktúrában, s a megszokott módon kell fordítani ezeket a forrásfájlokat.
Az Android projekt létrehozása után a forráskód az src könyvtárban, míg a felhasználói felület leírására szolgáló XML állományok a res könyvtárban találhatók. Az erőforrás állományokat egy R állomány köti össze a forráskóddal, így könnyedén elérhetjük Java oldalról az XML-ben definiált felületi elemeket. Az Android projekt fordításának eredménye egy APK állomány, melyet közvetlenül telepíthetünk mobil eszközre.
Szerencsére az Android fejlesztés esetén a forráskód és a felhasználói felület különválik, a felhasználói felület definiálására XML állományokat használhatunk (AXML - Android XML ;-] ), így lehetőségünk van a felület deklaratív módon való megadására. Ez jó hír, főleg annak aki már kiképezte magát WPF-ből. Ez azonban nem teszi kizárttá, hogy forráskód szintjén is létrehozzuk, elérjük és manipuláljuk a felhasználói felületet. Ökölszabályként elfogadott, hogy a felhasználói felület minél inkább különöljön el a forráskódtól (ÁMEN!). A projektleíró állomány szintén XML formátumban érhető el (Android Manifest).

Manifest állomány

A manifest állomány az alkalmazás (lelke) leírója, definiálja az alkalmazás komponenseit. Az állománynak deklarálnia kell a következőket:
  1. Alkalmazás komponensek listája.
  2. Szükséges minimális Android verzió.
  3. Szükséges hardware konfiguráció.
Komponens indítás előtt a rendszer a manifest állományt ellenőrzi, hogy definiálva van-e benne a kért komponens. Ezen felül további feladatokat is ellát pl. mik az alkalmazás futtatásának minimális követelményei. A manifest állományban meg kell adni továbbá a támogatni kívánt Android verziót, mely felfele kompatibilis az újabb verziókkal, régebbi verzióra azonban már nem telepíthető. Meg kell adni az engedélyeket, amelyekre az alkalmazásnak szüksége van (pl. Internet elérés, névjegyzék elérés, stb.) Az alkalmazás telepítésekor ellenőrzi a rendszer ezen követelmények meglétét. A legfontosabb manifest attribútumok és tag-ek:
  • android:icon az alkalmazás ikonja
  • android:name az activity teljes neve package-al együtt
  • android:label a készülék felületén, a felhasználók által látható név
    A manifest-ben nem szereplő Activity-k, Service-k és Content provider-ek nem láthatók a rendszer számára. Ezzel szemben Broadcast receiver-ek dinamikusan is ki/be regisztrálhatóak kódból (registerReceiver()).

    A bűvös R.java állomány

    Amikor először kezdünk fejleszteni Android platformra a legfurcsább állomány a forrásban az R.java lesz. Én legalábbis csak pislogtam amikor először megpillantottam. A nevét a RESOURCE szóból kapta. Ez a ronda állomány a felelős azért, hogy az erőforrásokat kódból is elérjük. Az erőforrások elérhetőségét a rendszer automatikusan frissíti és karbantartja, így csak azt jegyezzük meg, hogy ezt az állományt kézzel nem piszkáljuk. Ezt a Java fájlt használhatjuk arra, hogy az ikonokat, képeket, elrendezéseket vagy szövegeket nem a programba írunk közvetlenül, hanem felhasználjuk az R osztályt, amely mutat az adott erőforrásra. Gondoljunk csak az Xml-ben leírt UI-ra, itt tudunk pl. az ott leírt gombra hivatkozni az id segítségével. A gyakorlatban minden világos lesz.

    A fordítás menete

    1. A fejlesztő elkészíti a Java forráskódot, valamint az XML alapú felhasználói felületleírást a szükséges erőforrás állományokkal.
    2. A fejlesztőkörnyezet az erőforrás állományokból folyamatosan naprakészen tartja az „R.java” erőforrás fájlt a fejlesztéshez és a fordításhoz.
    3. A fejlesztő a Manifest állományban beállítja az alkalmazás hozzáférési jogosultságait (pl. Internet elérés, szenzorok használata, stb.).
    4. A fordító a forráskódból, az erőforrásokból és a külső könyvtárakból előállítja a Dalvik virtuális gép gépi kódját.
    5. A gépi kódból és az erőforrásokból előáll a nem aláírt APK állomány.
    6. Végül a rendszer végrehajtja az aláírást és előáll a készülékekre telepíthető aláírt APK.
    A fordítás menete.
    A teljes folyamat a fejlesztői gépen megy végbe, a készülékekre már csak bináris állomány jut el. Szemben a Silverlight világgal ahol a fordításnak csak egy része megy végbe a fejlesztők gépén, a második lépcsőfok a felhasználó gépén történik. Ez a folyamat garantálja számunkra, hogy a végén a gépi kód teljes mértékben az adott processzora legyen optimalizálva. Az .apk-n belüli tartalom tekinthető egy alkalmazásnak, amely Android készülékekre telepíthető.

    És itt a vége...

    Itt és most véget vetünk ennek a bejegyzésnek. Még sok minden van amiről érdemes lenne írni de majd később. Remélem ez a rövid és sok szempontból nem alapos bevezető hozzájárul ahhoz, hogy a kezdő fejlesztők is magabiztosan tegyék meg az első lépéseket az Android varászlatos világában. A bejegyzés megírásához felhasználtam mindent amit értem, így egy jó kis turmix lett belőle. Alapvetően Dr. Ekler Péter előadásfóliáiból, valamint az AndroidWiki és Java Fórum cikkeiből ollóztam. Remélem nem lesz harag belőle. Ha szakmailag valami hibás akkor a kedves olvasókat kérem, hogy ne tartsák magukba kritikájukat. Kommentálni nem szégyen.

    2012. február 15., szerda

    Android Application Development - 200 Videos


    Bakter hívta fel a figyelmemet erre a szuper videógyűjteményre, a videók angol nyelvűek, de nagyon jók és hasznosak. Eredeti forrás: link.
    Köszönöm Bakter :)

    2012. február 12., vasárnap

    Android startlap kezdő fejlesztőknek


    Már régóta foglalkoztat a gondolat, hogy jó lenne megismerkedni az Android platformmal, mivel az egyetlen olyan mobil OS ami képes lehet a néhai Windows Mobile helyettesítésére. Lehetséges fájlokat másolni rá, van rendesen programozható Bluetooth stb. Ja, és igen, olcsó :) Ezek a dolgok sajnos a többi platformon nem olyan triviálisak. Szóval itt van ez a kedves zöld robot, jó lenne kezdeni vele valamit. Amikor egy új technológiával elkezdek foglalkozni mindig az édes anyanyelven keresek róla infókat először mivel számomra ez a leggyorsabb út a megértéshez. Csak az alapok után olvasok friss ropogós szakkönyvet. Ezt a bejegyzést is azért írtam, hogy az általam összegyűjtött legfontosabb weblapokat foglalja össze kezdő androidos fejlesztőknek. Akkor jöjjenek is a javaslatok a hazai kínálatból.
    Az androiddal kapcsolatos alapoldalak:
    1. http://androidwiki.hu
    2. http://developer.android.com
    3. http://source.android.com
    Az egyik leghatékonyabb tanulási módszer az online oktatás amelyben úttörő szerepet vállal hazánkban az ItFactory lelkes csapata. Szerencsére volt Androidos képzésük is melynek nyílt napját a YouTube-ra feltöltötték:

    IT Factory nyílt nap: Android.

    A videót mindenképp érdemes megtekinteni, hiszen ahhoz, hogy képbe kerüljünk, éppen elegendő a másfél óra. A rendszer telepítését itt olvashatjuk: Telepítendő környezet Android programozási tanfolyamhoz. Sajnos a tananyagot utólag nem lehet megvásárolni, pedig kiváló alapot adna a gyors kezdéshez. Persze, ha esetleg valakinek megvan az anyag az e-mailen bátran keressen csak meg :)
    A legkorrektebb magyar nyelvű Android tutoriál a Java Fórumon olvasható:
    Sajnálatos, hogy a cikksorozat abbamaradt. További írások olvashatóak a Hungarian Android Developers oldalán:
    Meg kell még említenünk Arqual blogjában indult android alkalmazásfejlesztés sorozatot is:
    1. Előszó
    2. SDK telepítés
    3. Eclipse telepítése
    4. Hello Arqual!
    Nagyon jó diasor található még Sicz-Mesziár János személyes weboldalán is. A tananyagot az  Óbudai Egyetem Neumann János Informatikai Karán oktatják. Kicsit lehetnének részletesebbek a bemutatók, de így is hasznos olvasmány:
    OE-NIK Android alkalmazásfejlesztési anyagok továbbiakban itt: http://nik.uni-obuda.hu/malk/

    Egyenlőre ennyit sikerült feltúrnom, de, ha valaki tud még magyar nyelvű anyagról azt kérem ossza meg velem és frissítem ezt a bejegyzést. Persze egy profi jegyzet sem jönne rosszul.