Bevezetés a mobil szoftverfejlesztésbe - Kidolgozott kérdések

A VIK Wikiből
A lap korábbi változatát látod, amilyen Szikszayl (vitalap | szerkesztései) 2013. szeptember 14., 21:10-kor történt szerkesztése után volt.
(eltér) ← Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)
Ugrás a navigációhoz Ugrás a kereséshez

Mi az a VMNO?

Virtual Mobile Network Operator

2G esetén mi volt a killer app?

Az SMS

Kik a mobil piac főbb szereplői?

  • Hálózati operátor
  • Szolgáltató
  • Készülék gyártó
  • Felhasználók

Mik a főbb mobil szoftverfejlesztési platformok?

Symbian, Android, Java ME, Python, Windows phone/mobile, Maemo-Meego

Mi az, hogy interpretált nyelv?

a forrásból a kód nem gépi kódra fordul, tehát a fordított kód [esetenként nem is kerül külön lefordításra] a számítógép számára még nem értelmezhető, és a kód álltalában egy értelmező program segítségével kerül futtatásra

Mik a natív nyelven megírt alkalmazások előnyei?

gyorsabb futás, erőforrások szabadabb elérése

Mik a fülek és mire jók? (magic 7)

tabokkal átláthatóbbá tehető pl egy űrlap, téma szerint csoportosítva a dolgokat, 7-nél többet az ember nehezen tud észben tartani.

Mik a fontosabb dialógus típusok? (adatbeviteli)

  • Query: egysoros adatbekéro dialógusok
  • Note: felbukkanó info ablakok
  • Multi query: kétsoros adatbekérő dialógus
  • Popup menu: felbukkanó választólista
  • Selection list: keresőmezős választólista
  • Multi selection list: többszörös elemválasztó lista
  • Űrlapok

Mik az űrlapok fontosabb tulajdonságai?

  • A legösszetettebb dialógus
  • Több beviteli mezovel is rendelkezhet
  • Szerkesztés és nézet üzemmód
  • Flagekkel finomhangolható a muködése
  • A mezők ennesek: (címke, típus [,érték])
  • save_hook: Validálásra (True/False)

Mik azok az ennesek?

egy olyan tömb, melynek értékei nem változtathatók

Milyen beviteli mezők lehetnek egy űrlapon?

text, number, date, time, combo (ezek radiobuttonok)

Mi a különbség a scan code és a key code között?

a keycode már egy feldolgozott kód, míg a scancode szorosabban kapcsolódik a leképezéshez

Milyen rajzolási primitívek vannak a PyS60 alatt?

  • line(koordináták, opciók)
  • polygon(koordináták, opciók)
  • rectangle(bal_felso_sarok, jobb_alsó_sarok, opciók)
  • ellipse(bal_felso_sarok, jobb_alsó_sarok, opciók)
  • pieslice(bal_felso_sarok, jobb_alsó_sarok, kezdet, vég, opciók)
  • arc(bal_felso_sarok, jobb_alsó_sarok, kezdet, vég, opciók)
  • point((x, y), opciók)
  • clear([háttérszín= (255,255,255)])
  • text((x,y), szöveg, [fill=szín, font])

Mi a position paraméter szerepe a fotó készítésnél?

több kamerás készüléknél melyik kamerát akarjuk használni (0 = hátoldali kamera)

Mit lehet beállítani fénykép készítésekor?

take_photo([mode='RGB16', size=(640, 480), flash='auto', zoom=0, exposure='auto', white_balance='auto', position=0])

Milyen osztállyal tudunk titkosított adatcserét végezni HTTP protokollon?

httplib/HTTPSConnection vagy HTTPResponse esetleg HTTPSResponse, ezt nem sikerült igazából kiderítenem...

Mire szolgál a JSR-75?

file connection és PIM funkció

fiók elérése

Mi a Java platformfüggetlenség alapja?

Java virtuális gép, JVM (Java Virtual Machine)

Milyen Java platformok léteznek?

  • J2EE – enterprise, webes, nagy eszközkészlet
  • J2SE – standard, asztalai, közepes eszközkészlet
  • JavaME (J2ME) – micro, mobil, kis eszközkészlet

Mit nevezünk MIDletnek?

Java alkalmazás

Mire használható a NetBeans FlowDesigner?

A legtöbb fejlesztőeszköz támogatja beépített designer segítségével a navigáció kialakítását, ilyen eszköz például a NetBeans Flow Designer

Mire szolgál a NetBeans Screen Designer?

A legtöbb fejlesztőeszközben megtalálható egy ScreenDesigner nevű eszköz a felhasználói felület kialakításához

Mik a lényeges különbségek, ha beépített GUI elemeket illetve ha Canvas-t használunk?

beépített GUI a beállított témához tartozó elemekből építkezik, míg a Canvas-nál mindent nekünk kell létrehozni

Mik a GUI elemek főbb tulajdonságai?

  • Az elemek kitöltik a kijelző teljes szélességét
  • Egymás alatt helyezkednek el
  • Minden elem rendelkezik saját azonosítóval és egyedi tulajdonságokkal

Mire szolgál a showNotify függvény?

Canvas-nak többféle eseménykezelő metódusa van ilyenek a showNotify(), és a hideNotify(), melyek akkor hívódnak meg, ha a Canvas előtérben vagy hátérbe kerül

Mit jelent az Exclusive Choice Group?

  • Multiple (==ChoiceBox): több elem választható ki egyidejűleg
  • Exclusive (==RadioButton): csak egy listaelem jelölhető ki
  • Popup (==ListBox): legördülő listából választható ki egy elem

Milyen lehetőséget biztosít az RMS rekordok összehasonlítására?

Az RMS definiál egy RecordComparator interface-t, ami a compare (byte[] rec1, byte[] rec2) függvénnyel lehetővé teszi, hogy két rekordot összehasonlíthassunk.

Milyen módokat ismer adatok tárolására?

RMS-ben Record Management System, vagy fájlban tárolás

Mikor érdemes RMS-t használni?

  • Rekord orientált adatbázis-kezelő rendszer
  • A műveletek oszthatatlan, szinkron műveletek
  • Mobil alkalmazás perzisztensen tárolhasson adatot
  • A MIDlet-ek rekordokat oszthatnak meg egymás között, ha egy alkalmazásban vannak, alkalmazások viszont nem érhetik el egymás adatbázisait

Mikor találkozhatunk biztonsági megerősítő kérdéssel?

ha bizonyos erőforrásokhoz hozzá akarunk férni (certificate)

Hogyan tudunk elérni egy fájlt?

FileConnection API-val (JSR-75)

Connector.open(String parameter)

file://<host>/<root>/<directory>/<directory>/.../<name>

Milyen főbb Java ME fájlkezelő függvényt ismer?

mkdir(), create(), close(), read(), write(), delete()

Miért kell külön szálba rakni a fájlkezelőt?

mert blokkolhat, ami a telefon látszólagos lefagyását eredményezheti

Mi legyen a paramétere a Connector.open() függvénynek, ha 192.168.0.1 címhez akarunk csatlakozni sockettel a 4444-es porton?

Connector.open("socket://192.168.0.1:4444");

Mik a webservice előnyei J2ME-ben?

  • A Web Service WSDL (Web Services Definition Language): alapján generálja a kódot
  • Elfedi a hálózati kommunikációt
  • Web Service hívás egyszerű függvényhívás formájában érhető el egy vezérlő objektumtól

Bluetooth eszközök hogyan szervezhetők hálózatban?

  • A készülékek úgynevezett piconet-be szerveződnek
  • A piconet egy master-t és maximum 7 aktív slave-t tartalmaz
  • Egy-egy és egy-több kapcsolatok
  • A master kezdeményezi a kommunikációt
  • Egy piconetben lévő készülék kommunikálhat egy másik piconet-ben lévővel: scatternet

Mire használható a Manager osztály?

Manager osztály a legfelsőbb szintű factory jellegű vezérlőosztály, melynek feladata a Player objektumok létrehozása. Információt biztosít az rendszer képességeiről (formátum, protokoll). Egyszerű felületet nyújt tone-ok (hangok) lejátszására

Melyik JSR támogatja a multimedia kezelését Java ME-ben?

JSR-135 ami gyakorlatilag a MIDP 2.0; MMAPI = Multimedia API

Hol jeleníthető meg a kamera?

Formon, Canvason

Melyik vezérlő használható hangerőszabályozásra?

VolumeControl

Mire jó a prefetch?

betölti előre a médiát, ami aztán prefetched állapotba kerül, és ha ekkor elindítjuk a lejátszást, egyből indul, nem kell rá várni

PythonS60

Mik azok az ennesek?

nem módosítható tartalmú tömbök

Valósíts meg fájlküldést OBEX-en keresztül!

Hozz létre hálózati kapcsolatot, ami feldob valamilyen popup-ot! Valami kód tabok kezelésére

JavaME

Mi a MIDlet?

JavaME alkalmazás

Sorolj fel néhány fájlkezelő függvényt!

create(), mkdir(), close(), delete(), read(), write()

Connector.open() függvénynek milyen paramétere legyen, ha...(ez változó, hogy mit kérnek)? (16. slide)

Connector.open(’’socket:// file:// http:// datagram:// com:0;baudrate=9000’’)

Mire használható a Manager osztály?

player létrehozásra, tone játszásra

Mi a JSR?

JavaME hez mindenféle kiegészítés pl: BT, MMAPI, PIM kezelés stb...

Hogy néz ki a MIDlet váz?

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class HelloMidlet extends MIDlet{
public void startApp() {}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {} }

Mire jó a FlowDesigner?

navigáció kialakítására

Mi az RMS?

Record Management System, rekord adatbázis-kezelő rendszer

Mi a RecordStore függvény 2. paramétere?

public static RecordStore openRecordStore(String recordStoreName, boolean createIfNecessary )

Megnyitja és visszaadja a recordStoreName nevű adatbázist. Ha nem létezik az adatbázis, és createIfNecessary = true, akkor új adatbázist hoz létre, false esetén pedig RecordStoreNotFoundException kivételt dob. Valami fájlkezelési művelet (pl könyvtár létrehozása paraméter alapján)


Videocontrol (34. slide), pl kamerát formra tenni

Thread, jpegből legyen image, bytetömb kezelés 42. slide

Miért bővíthető a GFC?

mert egy egyszerű stringet vár paraméterként

Egy szálban nyiss egy HTTP kapcsolatot!

Milyen energiaszinteket definiál a Bluetooth?

  • Sniff mód: Alacsony energiaszinten való figyelés
  • Hold mód: Nincs adatovábbítás, az óra azonban működik
  • Park mód: A slave-k szinkronizálva vannak a master-hez, azonban nem részei a forgalomnak

Írj SMS-t küldő vagy valamilyen porton SMS-t váró alkalmazást! (41. slide)