Font size
Worksheetsmobalk
Total questions: 71
Worksheet time: 45mins
A normál üzenetszórás esetén
mindenkinek kiküldi
egynek küldi ki, akit véletlenszerűen választ ki
A lokális üzenetszórás esetén
csak az alkalmazáson belüli vevőknek küldi ki
csak a helyi fizikai lokációkhoz közeli vevőknek küldi ki
Erőforrásokat
A fájlrendszer API segítségével tudunk elérni
Az R osztály segítségével tudunk elérni
Az intent lehet
implicit
explicit
Az Activity verem célja
a szálkezelés rendezése
a navigáció támogatása
A RecyclerView
táblázatok kezelésére alkalmas tároló
nagy adathalmaz kezelésére alkalmas görgethető tároló
Az Activity legfontosabb metódusa, amit mindenképp felül kell írni
start
run
onCreate
A szolgáltatás
a konfiguráció változás hatására megsemmisül
továbbfut alkalmazás váltás között is
Gyakori elrendezés osztályok
TableLayout
ConstraintLayout
LinearLayout
RelativeLayout
SpaceLayout
A konfigurációváltoztatás
nem számít, az Activity tartós, csak a program
újraindulása törli a hozzá tartozó erőforrásokat
érvénytelenné teszi az Activity-hez tartozó erőforrásokat
A dimenzió kényszerek
Az elem méreteire mondanak szabályokat
a képernyő Z irányú dimenziójára mondanak szabályokat
A kontextusfüggő megjelenítés
a lánc megjelenítésében adhatunk meg paramétereket
segítségével adott kontextushoz tudunk elrendezést specifikálni
WorkManager
Nem veszi figyelembe a telefon állapotát
Figyelembe veszi a telefon állapotát
Képes feladatok láncolására, párhuzamosítására
Az alkalmazásban a navigáció
intentek közötti váltás Activity segítségével
Activity-k közötti váltás intentek segítségével
SQLITE
SQL adatbázis motort valósít meg
van JOIN
Egyszerre
tetszőleges számú view lehet fókuszban
egy view lehet fókuszban
Nézet hierarchia esetén
Érdemes minél laposabb, egyszerűbb hierarchiát kiépíteni
Érdemes minél tagoltabb, minél mélyebb hierarchiát kiépíteni
Az intent lehet
több vevőnek szóló
egy vevőnek szóló
Szolgáltatások
GUI szintű folyamatok
olyan alkalmazás komponensek amelyek a háttérben futnak és nem rendelkeznek GUI-val
Az Intent segítségével
tudja az adott Activity lementeni az állapotot
tudja megszólítani az alkalmazás a másik alkalmazásokat, Activity-ket
Üzenetszórás segítségével
lehet több szálat is szinkronizálni
lehet több alkalmazást is megszólítani
Saját nézetet
nem tudunk létrehozni, ezek előre elkészített elemek, csak Activity szinten lehet testreszabni
is létre tudunk hozatni a megfelelő View osztályból leszármaztatott osztályunk segítségével
Nézetet és elrendezést az alábbi módon tudunk létrehozni:
Kódból
Deklaratív módon(XML-ben)
Az Activity onStart metódusa
akkor hívódik meg mikor külön szálat kap
akkor hívódik meg, amikor láthatóvá válik
az alkalmazás indulásakor egyszer hívódik meg
Szolgáltatások megvalósítása
Service osztályból kell származtatni
Felül kell írni az életciklus metódusokat
Android Linux Kernel esetén
Az elsődleges tároló a Flash
Az elsődleges tároló a RAM
A szoftverek és az adat két tárolóban van
Az intentek
segítségével meghívhatunk kódrészleteket adott processzen belül
segítségével meghívhatunk kódrészleteket processzusok közt
Az intent szűrő segítségével
a vevő kiszűrheti, hogy mely intenteket szeretné megkapni
a küldő kiszűrheti, hogy kinek szeretné az adott intentet elküldeni
Az Intent szűrő feladata
a beérkező intentek szűrése
a kimenő intentek szűrése
Android alkalmazás keretrendszer rétegre jellemző
A vezérlés események és callback-ek segítségével történik
IoC alapú
Szolgáltatásban
érdemes nagy CPU igényű feladatokat megvalósítani
nem szabad nagy CPU igényű feladatokat megvalósítani
egyik se
Az aktivitás
egy alkalmazás komponens
egy párhuzamosan futtatott folyamat
a kliens szerver kapcsolatáért felelős osztály
A nézet hierarchia
OO objektum öröklődés hierarchia mentén valósítható meg
Szülő-gyermek, tároló hierarchia mentén valósítható meg
Az egyedi üzenetszórás
az egyedi(nem rendszer) alkalmazások küldi ki
olyan, mint a rendszer üzenetszórás , csak ez egy csoportnak szól
Intent segítségével
nem lehet adatot küldeni
lehet adatot küldeni
Az Activity és a GUI leíró XML kapcsolatát
nem kell megadni, mert automatikusan megtalálja név alapján
a setContentView segítségével lehet megtalálni
Activity állapotát érdemes
az onStart metódussal érdemes kezelni
az onRestoreInstanceState metódussal kezelni
Szolgáltatások indítása az alábbi függvényekkel lehetséges
onStartCommand()
onDestroy()
onBind()
Adattárolás-fájlrendszer
Külső tár - Publikus könyvtárak
Az alkalmazások böngészhetik a fájlokat, mappákat
Belső tár-Privát csak az app számára látható fájlok
Belső tár- Privát mindenki számára csak olvasható fájlok
Activity - Service kommunikáció messenger segítségével
a handelMessage() segítségével tudjuk a Messenger proxy üzenetét fogadni
Az Android IM keretrendszerét használja
Android handler-t használ(beburkolva Messengerbe)
Az Android push-ra épít
Activity - Service kommunikáció megoldások
Az AIDL által generált proxy-t hívja meg
Activity - Service intent segítségével
bindService() esetén send() messenger referencián
A HAL-ra igaz, hogy
a HAL egy kerneltérbeli C könyvtár
a keresztülívelő problémák elválasztására van kialakítva
Az alkalmazásfejlesztők a logikára és nem az alacsony szintű részletekre koncentrálhatnak
Elválasztja az Android platform szoftvert a HW-től
A kötött szolgáltatás esetén
Az életciklusa fügetlen az elindító komponens életciklusától
JobScheduler által adott kritériumok teljesítése esetén lesz elindítva
Az életciklusa függ az elindító komponens életciklusától
Android helyi Inter-Process Communication(ICP) motivációja
Az alkalmazások egy processzben futnak, nem látják egymás memóriaterületét
Az alkalmazások különböző processzekben futnak, és látják egymás memóriaterületét
Az alkalmazások különböző processzekben futnak, és nem látják egymás memóriaterületét
JobManager
Nem veszi figyelembe a telefon állapotát
Képes feladatok láncolására, párhuzamosítására
Figyelembe veszi a felefon állapotát
Segít a háttérfolyamatokat intelligensen ütemezni
Értesítések
A normál alkalmazás UI-n kívül kézbesített üzenetek
Értesítés csatornák : Az egyes értesítés típusokat fogja össze a felhasználónak által testreszabható módon
Több értesítés is tartozhat egy csatornához
Csak egy értesítés is tartozhat egy csatornához
Riasztások
Nem veszi figyelembe a telefon állapotát
Adott tevékenységet ütemez időben
Figyelembe veszi a telefon állapotát
Az idő mérése lehet: eltelt valós idő
Az idő mérése lehet : RTC
Szolgáltatás életciklus állapotok
Indítás
Leállás
Párhuzamosítás
Futás
Melyek egy android program főbb absztrakciói
TCP socket
Broadcast Reciewer
Activity
Intent
Az alábbi állítások közül melyek írják le legjobban az Android Linux kernel szerepét
Java szolgáltatások halmaza mely gazdagítja a környezetet
Android alkalmazásokat futtat és menedzsel
Segít a HW erőforrások elérésében, megosztásában
Melyek Android alkalmazás keretrendszer komponensek
Package Manager
Services és Activities
Content Providers
Dalvik Virtual Machine
Broadcast Recievers
A lánc kényszerek
egy nézet láncolat a nézetet köti a saját tulajdonságaihoz
nézetet köt intent segítségével Activityhez
kétirányú kényszer a nézetek közt
Shared Preferences
Csak az alkalmazás férhet hozzá
Csak az alkalmazás írhatja a többi csak olvassa
Kevés, egyszerű adat név/érték alapú tárolása egy fájlban
Infrastruktúra köztesrétegre jellemző
A linux kernel képességeit bővíti ki
A köztesréteg az o perációs rendszer és az alkalmazások közt helyezkedik el
Átemeli a HW/SW fejlődése által adott lehetőségeket
Egyszerűsíti az alkalmazások evolúcióját
Room
SQLite Android kódot generál
Az entitásoknak üzleti interfészeket kell megvalósítaniuk
A Room egy robosztus SQL objektum áthidaló könyvtár
DAO megközelítést alkalmazza
Az entitások POJO alapúak
Az alábbi állítások közül melyek írnak le Android köztesrétegbe tartozó rétegeket/elemeket?
Native C/C++ libraries
Binder (IPC) Driver
Activity Manager Service és Power Management
Hardware abstraction layer
Android Run-Time(ART)
Az android alkalmazás keretrendszerre mely állítások igazak?
A szolgáltatásai folyamatosan futnak
Rendszerszolgáltatásokat biztosít
Linux-ot mobil környezethez igazítja
Mi igaz a Java szálakra?
A szál a legkisebb végrehajtható programegység
Minden szálnak külön hívási verme van
Java szál futtatásához meg kell adni a futtatandó kódot
Java szál indítása az egyetlen mód párhuzamos Android alkalmazás megvalósítására
Minden processzhez több szál tartozhat
A kényszer elrendezés külső elemei
Külső rögzítési pontok
Kényszerek
Alapvonal rögzítési pontok
Eseménykezelőt
Java/Kotlinban tudunk megvalósítani
XML-ben tudunk megvalósításhoz kötni
XML-ben tudunk megvalósítani
Az alábbiak közül melyek az Android rendszerek jellemző HW elemei?
Wifi
CPU
Gyorsulásmérő
Activity és Intent
GPU
Mi igaz az Android alkalmazásra?
A legtöbb Java/Kotlin nyelven van megírva
Nem írhatunk C/C++ nyelven alkalmazást
A legtöbb C/C++ nyelven van megírva
Adott részeit C/C++ -ban is írhatjuk
A nézet csoport ( ViewGroup)
egy láthatatlan tároló
az elrendezés(Layout)alapja
az a tároló, ahol több nézetet (View) is együtt tudunk kezelni
Android szolgáltatások típusai
Kötött szolgáltatás
Időzített szolgáltatás
Proxy szolgáltatás
Elindított(Started) szolgáltatás
Rétegelt szoftver architektúrára jellemző:
A rétegek koncentrikus körökben helyezkednek el
Szorosan csatolt helyett lazán csatolt
Spegetti architektúra helyett struktúrált
Egy jó példa erre az Onion fájlrendszer
ContentProvider
Akkor jön létre, amikor a Content resolver megpróbálja elérni
Központi strukturált adattár
Több alkalmazás számára is elérhető
Folyamatosan fut a háttérben
IntentService keretrendszer
Intentek egyszerű kezelését segíti
Egyszerűvé teszi a párhuzamos szolgáltatások megvalósítását
Az Intent-et egy HandlerThread-ben kezeli, leállítását
Az Activity életciklusához segít proxy interfészen
Az Intent
egy végrehajtandó művelet leírása
Olyan, mint az Activity, csak párhuzamos
A központ pozícionálás esetén, ha nem akarjuk a központba tenni, akkor
bias segítségével tudunk eltolást specifikálni
más kényszert kell választanunk, csak középre tudunk pozícionálni
A rendezett üzenetszórás esetén
egyszerre többen is megkapják, a válasz rendezett
egyszerre egy vevőnek küldi ki
A kényszer elrendezés kezelő típusai
Cirkuláris pozícionálás
Relatív pozícionálás
Láncok
Központ pozícionálás
Dimenzió kényszerek
