Szoftverfejlesztés a Google Android OS-re (Android 3.0, API level 11)



Hasonló dokumentumok

SZOFTVERFEJLESZTÉS ANDROID PLATFORMRA. Dr. Iszály György Barna

Mobil Informatikai Rendszerek

Mobil Informatikai Rendszerek

Android Wear programozás. Nyitrai István

Közösség, projektek, IDE

Broadcast Service Widget

Fejlesztői szemmel at K

SZOFTVERFEJLESZTÉS ANDROID PLATFORMRA. Dr. Iszály György Barna

Crossplatform mobil fejlesztőkörnyezet kiválasztását támogató kutatás

Mobil készülékek programozása

Mobilalkalmazás fejlesztés. Android I. előadás

Bodó / Csató / Gaskó / Sulyok / Simon október 9. Matematika és Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár

Android alapok. Android játékfejlesztés

Nokia N9 - MeeGo Harmattan bemutatkozik

Overview. Service. Application Activity Activity 2 Activity 3. Fragment. Fragment. Fragment. Frag ment. Fragment. Broadcast Receiver

Viczián István IP Systems JUM XIX szeptember 18.

ANDROID ALKALMAZÁSFEJLESZTÉS

ANDROID ALKALMAZÁS FEJLESZTÉS

iphone és Android két jó barát...

ARM Cortex magú mikrovezérlők. mbed

ANDROID ALKALMAZÁSFEJLESZTÉS

Kis Gergely MattaKis Consulting Fejlesztői szemmel

Kis Gergely MattaKis Consulting Fejlesztői szemmel

Android 5.0.

ANDROID ALKALMAZÁSFEJLESZTÉS

Android Pie újdonságai

Gyakorlatok. VITMMA09 Okos város MSc mellékspecializáció

READy Suite: mobil és fix kiolvasó hálózat fogyasztásmérőkhöz

Near Field Communication (NFC)

ALKALMAZÁSOK ISMERTETÉSE

Mobil Telefonon Keresztüli Felügyelet Felhasználói Kézikönyv

Webes alkalmazások fejlesztése. Bevezetés az ASP.NET MVC 5 keretrendszerbe

Nyílt forráskódú irodai programkomponensek vállalati környezetbe való integrációjának vizsgálata és implementációja

UI megismerése, különböző felbontások támogatása, használati jogok kérése

Indítsuk el az imént kicsomagolt Eclipse programot és kattintsunk a Help/Install new software menüre. A work with opcióhoz írjuk be a

Kommunikáció Androidon GSM hívás SMS küldés, fogadás Bluetooth NFC USB

Interaktív webes térképezés GRASS GIS 7-tel. A Web Processing Service bemutatása

Gyors, kényelmes, típusbiztos

Még közelebb. a taghoz, Még közelebb


Cisco ISE megoldások. Balatonalmádi, február 27. Détári Gábor, senior rendszermérnök

Flex: csak rugalmasan!

Egy Erlang refaktor lépés: Függvényparaméterek összevonása tuple-ba

ANDROID ALKALMAZÁSFEJLESZTÉS

Norway Grants. Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai. Kakuk Zoltán, Vision 95 Kft.

NHDR-3104AHD-II NHDR-3108AHD-II NHDR-3116AHD-II NHDR-5004AHD-II NHDR-5008AHD-II NHDR-5016AHD-II NHDR-5204AHD NHDR-5208AHD. Telepítői Segédlet

Az NFC-technológia mindennapi életben való alkalmazásának vonzó lehetőségei

SZAKKÉPZÉSI KERETTANTERV a(z) MOBILALKALMAZÁS FEJLESZTŐ SZAKKÉPESÍTÉS-RÁÉPÜLÉSHEZ

Kategóriák szerinti web-szűrés, állományok titkosítása és NAC. Mindez mobilon. - Sophos Mobile Control 4.0

Újdonságok a Google műhelyéből. Péter Ekler

iphone programozás alapjai IV. Gyakorlat

strings.xml res/values/strings.xml fájlban hozzuk létre a hiányzó string adatforrásainkat A jelenlegi helyett ez álljon: <resources> <string

Autóipari beágyazott rendszerek Dr. Balogh, András

Helymeghatározás. Hol vagyok a világban?

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

Ügyfélszolgálati képernyők

Zádory Zsolt BunnyDefense dokumentáció

Operációs rendszerek. A Windows NT felépítése

Mobil Informatikai Rendszerek

Felhasználói felület megismerése, különböző felbontások támogatása

Point of View Android 2.3 Tablet Kézikönyv PlayTab 2 / ProTab 2

Számlaigazoltatás újratöltve. Lázár Péter

Nyomtatható verzió. Samsung Galaxy Tab. Platform. Oldal nyomtatása. Nyitóoldal Mobiltelefonok Táblagép. GT-P1000 Rating

Marketing Megfeleljen a vásárlók igényeinek nyereséges módon

Win 8 változatok. 2. sz. melléklet felnottkepzes@gmail.com. Töltse ki az előzetes tudásszint felmérő dolgozatot!

Mobilplatformok Merre tart a világ? Kis Gergely MattaKis Consulting

Hálózati betekint ő program telepítése mobil telefonra. Symbian. alarm shop. Windows mobile Android IPhone Blackberry

!!" KÉSZÍTK: ERDÉLYI LAJOS KOLLÁR NÁNDOR WD6OGW BUK8Y7

ANDROID ALKALMAZÁSFEJLESZTÉS

F-Secure biztonsági megoldás Az első lépések Android-készülékeken

Ez a Használati útmutató a következő modellekre vonatkozik:

MKB. Mobil NetBANKár. Mobil eszköz és böngészı beállítások

Tartalomjegyzék. Előszó... 10

Magyar Nemzeti Bank - Elektronikus Rendszer Hitelesített Adatok Fogadásához ERA. Elektronikus aláírás - felhasználói dokumentáció

FELHASZNÁLÓI KÉZIKÖNYV 1.sz. melléklet

Everything Over Ethernet

Használati útmutató. Xperia Z C6603/C6602

Az OpenScape Business rendszerek egységes architektúrára épülnek: Rugalmas, skálázható és megbízható

Steps Towards an Ontology Based Learning Environment. Anita Pintér Corvinno Technologia Transzfer Kft

Hova tart a cross platform mérés?

MTA SZTAKI HBIT szakmai gyakorlatok 2014 nyár

PTE-PROXY VPN használata, könyvtári adatbázisok elérhetősége távolról

A szoftverfejlesztés eszközei

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Alkalmazás boltok. Android Market, Apple AppStore, WP7 MarketPlace Cserna Bence, Paksy Patrik

Verzió: PROCONTROL ELECTRONICS LTD


A TANTÁRGY ADATLAPJA

Web-fejlesztés NGM_IN002_1

RENDSZER VEZÉRLÉSE HASZNÁLATI UTASÍTÁS

Point of View Android 2.3 Tablet Kézikönyv ProTab 2XL

Az Oracle Fusion szakértői szemmel

Használati. útmutató

VMware. technológiával. ADATMENTÉS VMware környezetben IBM Tivoli eszközökkel

Szolgáltatási szint megállapodás

Használati alapú és modell alapú tesztelés kombinálása szolgáltatásorientált architektúrák teszteléséhez az ipari gyakorlatban

A hibrid DB cloud biztonsági eszköztára. Kóródi Ferenc Budapest,

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

A felkészülés ideje alatt segédeszköz nem használható!

Átírás:

Szoftverfejlesztés a Google Android OS-re (Android 3.0, API level 11) Dudás András 2011 30 percben!

Tartalom Egy alkalmazás alapjai, alapvető építőkövek Fejlesztés mikéntje Technológia áttekintés Projektek, számonkérés További infó, elérhetőség

Az Android OS felépítése

Egy alkalmazás alapjai I. Activity Egy képernyőnyi információ / interakciós lehetőség prezentálására Megoldható több is, csak nem javasolt Egyéb : Broadcast receivers: rendszer és program üzenetekre reagáló komponens Content providers: magasabb szintű perzisztencia Intent: komponensek közötti interakció Fragment: API Level 11, Activity építőkocka Loader: API Level 11 A háttérben: Minden alkalmazás: Külön userként Külön processzként Komponens szegregáció: miért? Principle of least knowledge Resource efficiency Service Az elemi perzisztencia egysége Activityk mögötti adattárolás, koherens alkalmazás magja Külön Dalvek VM-en fut IPC természetesen van, lásd Intent, lifecycle hívások, etc.

Egy alkalmazás alapjai II. Életciklusok: Minden komponens különféle callbackekkel kell rendelkezzen, ezeket a rendszer az életciklus bizonyos pontjain meghívja, és a visszatérésig vár Ezek határozzák meg a viselkedést a rendszeresemények függvényében, illetve adják meg azon pontokat, amikor az adatokat perzisztálni kell. Az ide vonatkozó API referenciát kulcsfontossűgú megismerni!

Egy alkalmazás alapjai III. Adat perzisztencia: Bizonyos helyzetekben az Activity állapota megsemmisülhet Erre megoldást kínál a Bundle, és az onsaveinstancestate() callback. Vigyázat: ez a mechanizmus nem mindig működik! Vannak jobb megoldások, pl. Service (bár ezzel vigyázni kell), Content Provider. Milyen adatot hová érdemes tenni? Milyen adataink lehetnek? Activity (Fragment) specifikus Service specifikus Alkalmazás specifikus Távoli adat források, adatbázisok

Egy alkalmazás alapjai IV. Komponensek közti kommunikáció: Intent, szándék Tartalmaz: Akció: Mi a szándék. Pl. ACTION_MAIN elindíthatja az Activitynket mint az alkalmazás belépési pontja. Személetesebben, ACTION_DIAL Adat: Min hajtsa végre a vevő a szándékot. Pl.: ACTION_CALL akció esetén lehet az adat egy URI, tel:06201337434 Kategória A vevő komponensekre egy megkötés. Pl. CATEGORY_LAUNCHER: jelenjen meg az adott Activity az OS fő alkalmazás indító menüjében. Extrák : Flagek Lehet egy akció végrehajtási kérelme, vagy egy esemény megtörténtéről egy értesítés. A célbajuttatásuk módja, illetve a (potenciális) címzettek listája függ a tipusától Implicit, explicit Nem secure: a szűrők (később) nem védenek meg attól, hogy célba vegyenek egy Intentel.

Egy alkalmazás alapjai V. XML konfigurációs állományok és szerepük: AndroidManifest.xml Permission kérelmek Pl. android.permission.read_owner_data Egyátalán mi az a permission? Min API Level (lásd később) Servicek, Activityk, egyéb komponensek deklarálása Intent szűrők, amikkel megadhatjuk, milyen Intentekre reagálhat az adott komponens Alkalmazás ikonja (res/drawable/icon.png) Library link kérelmek Resourceok: (res/) Layout (res/layout) main.xml ( main a Resource ID) Az Activityk Viewjeinek viselkedés / kinézetleírása Values (res/values) strings.xm ( strings a Resource ID) Egyszerű String->String map, az alkalmazás által használt szövegek dependency injectionja, használható pl. lokalizációra

Támogatott techonlógiák Hang MP3;MIDI;AAC LC/LTP;Ogg Vorbis;PCM/WAVE;HE-AACv1 (AAC+);HE-AACv2 (enhanced AAC+);AMR-NB,AMR-WB Kép JPEG;GIF,PNG,BMP Videó MPEG-4 SP; H.263;H.264 AVC; VP8 3D OpenGL ES (NDK) Absztrakt : RenderScript Kommunikáció: Bluetooth, NFC, Wifi, USB Testing: JUnit MonkeyRunner A lista nem teljes.

3D részletesebben RenderScript new feature, 3.0 Relative kevés információ 3 fő eszköz ~C99 kód CUDA szerű compute API Az eredmény alkamazásba ágyazásának módszere Absztrakt, mégis natív kód 2 irányú kommunikáció adott Korábban zárt volt OpenGL ES alapú OpenGL ES Részleges support az NDK segítségével Gyors, picit talán jobban kitaposott, mint a RenderScript OpenGL ES alapú

Fejlesztési folyamat I. Alapvetően minden Android alkalmazás a Dalvik VM alatt fut: Java VM implementáció. Két fejlesztési megközelítés lehetséges: Konzolos fejlesztés Virtualizáció adott Szükséges hozzá: Android SDK Ant Eclipse SDK Virtualizáció adott Szükséges hozzá: Android SDK Eclipse Eclipse Android Development Tools plugin Natív kód integráció lehetséges: Android NDK, GNU Make, awk, Windows esetén Cygwin

Fejlesztési folyamat II. Eszközhasználat és virtualizáció: Android Virtual Device (AVD): nagyon jól paraméterezhető, virtuális telefon építhető vele, amin aztán tesztelni lehet. Némi hiányosság van, főleg a szenzorok terén. Android Debug Bridge (ADB): AVD vagy igazi telefonon történő teszteléshez. Rengeteg opció, parancs, jól dokumentált Kód API Level kiválasztása: Mi az az API level? Hogyan korrelál az Android verziókkal? A támogatott featureok nagy mértékben változnak a külömböző API szintek között Érdemes minél alacsonyabb szintet választani AVD felépítése, API level kiválasztása: A telefon API szintje létrehozásnál beállítható Annyi AVD-t lehet készíteni amennyire futja tárhelyből Egyszerre több AVD-t is lehet futtatni, és adott a lehetőség a kommunikációs képességek letesztelésére, akár virtuálisan felhívhatják egymást A hardware képességei is állíthatóak

Projektmunka Szabadon válaszott, egyeztetetett téma, vagy NIPG által megfogalmazott projekt NIPG projektek: Adott a lehetőség Android marketre kikerülésre, ELTE IP, ELTE-Soft keretein belül, bevétel részesedés. Max 2 hallgató / projekt. 4 Projekt: Gyro és accelerometer adatgyűjtés (távoli adatbázisba), megjelenítés, akár TDK is lehet. Accelerometer + Dasher, adatgyűjtés OpenCV fejegér Androidra (nehéz) Menu dinamikus átrendezés használatnak megfelelően, ajánló rendszer. Aki ezeken jól teljesít, nyáron mobil hightech projektben részvételi lehetőség, nemzetközi projektben, fizetés, diplomunka, Msc 16 kredit adott. A téma játékfejlesztés, arcfelismerés, arckifejezés-felismerés.

További Információ Az előadás letölthető: A honapomról: dna.web.elte.hu A tárgy honlapjáról: pszt.inf.elte.hu/index.php/mobil-alkalmazasokfejlesztese További információ: Az SDK-t letöltve a samples könyvtárban rengeteg érdekes példa van! developer.android.com android-developers.blogspot.com Sikeres ZH esetén [=)] tőlem, 4-729 Köszönöm a figyelmet!