Mobilszoftverek

A tantárgy angol neve: Mobile Software Development

Adatlap utolsó módosítása: 2016. március 16.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Műszaki menedzser MSc szak

7N-M11

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIAUM029   4/0/0/v 5  
3. A tantárgyfelelős személy és tanszék Dr. Forstner Bertalan,
4. A tantárgy előadója

Név:

Beosztás:

Tanszék, Int.:

Dr. Forstner Bertalan

egyetemi docens

Automatizálási és Alkalmazott Informatikai Tanszék

Dr. Ekler Péter

egyetemi adjunktus

Automatizálási és Alkalmazott Informatikai Tanszék

5. A tantárgy az alábbi témakörök ismeretére épít

Ajánlott ismeretek: Programozási alapismeretek. Java nyelv.

6. Előtanulmányi rend
Kötelező:
Training.Code=("7N-M11")

A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

A kötelező előtanulmányi rendek grafikus formában itt láthatók.

Ajánlott:
Nincs.
7. A tantárgy célkitűzése

A tárgy célja a mobil eszközökre való fejlesztés módszereinek és legjobb gyakorlatainak bevezetése, különös tekintettel az Android platformra. A hallgatók megismerkednek a mobil operációs rendszerek működésével, programozásának módszereivel. Mélységeiben tárgyalja az Android alapú mobilfejlesztés során felmerülő gyakori feladatok megoldásának lehetőségeit, kiegészítve a platform-specifikus technikák részletes bemutatásával.

8. A tantárgy részletes tematikája

Hét

 

Előadás anyaga

 

1.

 

A mobilszoftver-fejlesztés általános bemutatása. A platformok képességei, határai, eltérés az asztali szoftverfejlesztéstől. Androidot futtató készülékek széles skálájának illusztrálása. A fejlesztő környezet kialakítása valamint az emulátor telepítése.

 

2.

 

Android alkalmazások felépítése és alapelemei, az  Activity-k. Alkalmazás engedélyek és meta információk tárolása az AndroidManifest fájlban. Komponensek életciklusai.

 

3.

 

Felhasználói felület tervezésének módszerei, legjobb gyakorlatai. Létrehozás XML fájlból illetve forráskódból, az egyes metódusok előnyei, hátrányai, korlátai. Kompatibilitás a verziók között. Tervezés különböző méretű és felbontású képernyőkre. Pixelsűrűség-független mértékegység (dip) bemutatása. Stílusok és témák, definiálása, használata. Erőforrás fájlok kezelése. Általános és környezetfüggő menü létrehozása, dinamikus változtatása, használatuk gyakorlatai.

 

4.

 

Komponensek elindítása, valamint alkalmazáson belüli, és alkalmazások közti üzenetküldés megvalósítása Intent-ek segítségével. Komponensek közti üzenetküldés és annak fogadására való felkészülés Intent Filter-ekkel. Rendszerszintű üzenetek kezelése, a Broadcast Receiver bemutatása.

 

5.

 

Fájlkezelés, nyilvános tár és az alkalmazás védett területének használata. Állapotmentés lehetőségei, folytatódás alvó állapotból. Beállítások kezelése. SharedPreferences bemutatása, használatának előnyei, hátrányai.

 

6.

 

Nagy mennyiségű adat kezelésének lehetőségei. Az SQLite adatbáziskezelő bemutatása, korlátai, használatának legjobb gyakorlatai. Adatok elérhetővé tétele, „kiajánlása” más alkalmazások számára Content Provider-ek segítségével. Adatkötés lehetőségei, Adapterek.

 

7.

 

Pozíció meghatározás lehetőségei. Helyzet alapú szolgáltatások létrehozása és használata. Interaktív térkép beépítése az alkalmazásba. Földrajzi koordináták és cím oda-vissza konvertálása.

 

8.

 

Munka a háttérben szolgáltatások segítségével. Szolgáltatás képességei, indításának lehetőségei. Számításigényes és hosszú ideig tartó műveletek elválasztása a felhasználó felületet megjelenítő száltól, befejeződés vagy hiba esetén a UI értesítése.

 

9.

 

Eddig elsajátított tanulmányok összefoglalása

10.

 

Médiatartalmak kezelése, a készülék elő és hátoldali kameráinak használata. Audió és videófájlok készítése és lejátszása. Fénykép készítés a beépített fotó alkalmazás segítségével.

 

11.

 

Telefon-funkciók, hívásnapló, névjegyek elérése. Bejövő hívás érzékelése, kezelése. Hozzáférés a készüléken tárolt SMS üzenetekhez és naptár bejegyzésekhez.

 

12.

 

Hálózati kapcsolatok kezelése. Bluetooth, WiFi és NFC használatának lehetőségei, korlátai és legjobb gyakorlatai. Kommunikáció webszerverrel, protokollok támogatottsága platform szinten. XML, REST és SOAP webszolgáltatások megszólítása, és a válasz fogadása. Harmadik féltől származó komponensek használata. Webalkalmazások gyors portolása Androidra beágyazott WebView segítségével, JavaScript események tüzelése felhasználói felületről.

 

13.

 

Összefoglalás, ismétlés és rendszerezés.

 

14.

 

Ismétlés és rendszerezés. Kintekintés.

 

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) Előadás
10. Követelmények

a. A szorgalmi időszakban: egy zárthelyi

b. A vizsgaidőszakban: írásbeli vizsga

c. Elővizsga: igény szerint, a 13. héten

  

Az aláírás megszerzésének feltétele a zárthelyi elfogadható (legalább elégséges szintű) megoldása. A vizsgára bocsátás feltétele az aláírás megléte.

11. Pótlási lehetőségek

A zárthelyihez a TVSZ előírásai szerint mind a szorgalmi (13. oktatási hét), mind a pótlási időszakban 1-1 pótlási lehetőséget biztosítunk.

12. Konzultációs lehetőségek

A tárgy előadójával történt egyeztetés szerint.

13. Jegyzet, tankönyv, felhasználható irodalom

·        Ed Burnette, Hello, Android: Introducing Google's Mobile Development Platform, Pragmatic Bookshelf, 978-1-9343-5649-2, 2009

·        RetoMeier, Professional Android 2 Application Development, Wrox, 978-0-4705-6552-0, 2010

·        Mark Murphy, Beginning Android, Apress, 978-1-4302-2419-8, 2009

·        Sayed Hashimi, Satya Komatineni, Dave MacLean, Pro Android 2, Apress, 978-1-4302-2659-8, 2010

·        Jeff Friesen, Learn Java for Android Development, Apress, 978-1-4302-3156-1, 2010

·        Android Devlopers portál: http://developer.android.com/index.html

·        További irodalom az egyes témaköröknél javasolva

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra56
Félévközi készülés órákra30
Felkészülés zárthelyire20
Házi feladat elkészítése
Kijelölt írásos tananyag elsajátítása
Vizsgafelkészülés44
Összesen150
15. A tantárgy tematikáját kidolgozta

Név:

Beosztás:

Tanszék, Int.:

Dr. Forstner Bertalan

egyetemi docens

Automatizálási és Alkalmazott Informatikai Tanszék