Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Android szoftverfejlesztés

No description
by

Mónika Gál

on 13 March 2015

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Android szoftverfejlesztés

Android szoftverfejlesztés
Áttekintés
Android
Google fejlesztés 2005-től
Első androidos készülék: 2008
Linux-kernel köré épül
Az alkalmazásfejlesztés elsődleges nyelve a Java
Futtatáshoz Dalvik virtuális gép: olyan hordozható eszközökre van optimalizálva, amelyek korlátozott memóriával és CPU-sebességgel rendelkeznek.
Ingyenes fejlesztő környezet
Naponta 700 000 android készüléket aktiválnak (2012)
Android platform
Az apk tartalma
Az apk - becsomagolt android alkalmazás
META-INF könyvtár:
CERT.RSA: alkalmazástanúsítvány,
MANIFEST.MF: metainformációk kulcs-érték párokban,
CERT.SF: erőforrások listája és SHA-1 hashértékük, például:
Signature-Version: 1.0
Created-By: 1.0 (Android)
SHA1-Digest-Manifest: wxqnEAIOUA5n05QJ8CGMwjkGGWE=
Name: res/1ayout/exchange_component_back_bottom.xml
SHA1-Digest: eACjMjESj7Zkf0cBFTZOnqWrt7w=
Name: res/drawable-hdpi/icon.png
SHA1-Digest: DGEqylP8WOn0iV/ZzBx3MWOWGCA=
Res könyvtár:
az erőforrásokat tartalmazza
AndroidManifest.xml:
név, verzió, jogosultság, könyvtárak
classes.dex:
lefordított osztályok a Dalvik számára érthető formátumban
resources.arsc:
erőforrásadatok.
Android alkalmazás fejlesztése
Java nyelv - SDK
Natív kód - NDK (Native Development Kit)
Dalvik virtuális gép - felügyelt kód
Garbage collector
Javaban megszokott eseménykezelés - listener-ek és interface függvények
felhasználói felület xml-ben
projektleíró állomány - AndroidManifest.xml
erőforrás állományok - R.java
Fordítási mechanizmus
forráskód elkészítése java nyelven
felhasználói felület elkészítése xml-ben
R.java generálása (fejlesztőkörnyezet)
manifest állomány beállítása - az alkalmazás hozzáférési
jogosultságai (pl. internetelérés, szenzorok használata stb.), támogatott verzió
byte-kód előállítása (fordító) - Dalvik virtuális gép
byte-kódból + erőforrásokból - nem aláírt apk állomány.
aláírás után előáll a rendszerrel telepíthető apk állomány
a készülékre már csak a binás állomány kerül
Android alkalmazás környezet
minden android alkalmazás külön virtuális gépen fut
ha egy processz háttérbe kerül, akkor a háttérben fut tovább
ha a rendelkezésre álló memória kevés, a háttérben futó alkalmazásokat az Android egy prioritási sorrendet figyelembe véve leállíthatja
minden alkalmazás csak az általa kért erőforrásokhoz férhet hozzá
az erőforrásokhoz való hozzáférést telepítéskor a felhasználó engedélyezi
Android alkalmazás komponensek
Bővebben az Activityről
http://moo.tkiki.hu/android/Android.alapu.szoftverfejlesztes.2012.eBOOk-digIT.pdf
Activity
Service
ContentProvider
Broadcast
Receiver
Activity
Service
ContentProvider
Broadcast Receiver
Saját, önálló felü­lettel rendelkezik
Egy alkalmazáson belül több activity is lehet
Másik alkalmazás activity-je is elindítható (pl. fényképezőgép)


hosszabb ideig a háttérben futó feladat
nincs különálló felhasználói felülete
indíthat activity-ket, notification-eket stb.
Néhány tipikus szolgáltatással megvalósított funkció:
pozíció nyomonkövetése,
zenelejátszás,
nagyobb tartalomletöltések

feladata egy adatforrás kezelése és az adatforrásra vonatkozó kérések kiszolgálása
adatforrás lehet a készüléken található adatbázis, de akár webed RSS (Rich Site Summary) is
a kérést intéző elől elfedi az adatforrás összetettségét és elhelyezkedését
megvalósítja a kommunikációt az adatforrással, és az adatokat visszaadja a kérést indító félnek
egyedi URI-azonosítója van, amelyen keresztül akár más alkalmazás is elérheti
beépített Content providerek pl. névjegyzék
feladata, hogy Broadcast események hatására aktiválódva végrehajtson egy feladatot
Broadcast események lehetnek a rendszer vagy valamely más alkalmazás által közzétett események
A rendszer Broadcast eseményei pl. alacsony akkumulátorszint, bejövő hívás stb.
Activity és Windows ablak - mi a különbség?
Fő activity
Minden activity újakat indíthat - előző activity leáll, de a back stackben marad
Back stack: a példányosított activityket tartalmazza LIFO rendszerben.
Activity életciklus 3 fő állapota.
Resumed (running): az Activity előtérben van, és a focus rá irányul.
Paused: az Activity él, de egy másik Activity előrébb van, de még látszik az alatta levő. A rendszer kivételesen alacsony memóriaállapot esetén felszabadíthatja az Activityt.
Stopped: az Activity még él, de már egy másik Activity van teljesen előtérben. Alacsony memóriaállapot esetén a rendszer felszabadíthatja az Activityt.
Full transcript