Példaprogramok Android alá (Lista, mentés, visszatöltés, pattogó android figura) Android alapok. Android játékfejlesztés.



Hasonló dokumentumok
Java programozási nyelv 10. rész Input/output kezelés

Alap számológép alkalmazás

Gate Control okostelefon-alkalmazás

libgdx alapok, első alkalmazás

ANDROID ALKALMAZÁSFEJLESZTÉS

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben

Hello World Servlet. Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra.

A TAOEKR pályázati rendszer tokennel történő használatához szükséges Mozilla Firefox beállítása, a Java frissítése és beállítása. Mozilla Firefox...

Access adatbázis elérése OLE DB-n keresztül

OPERÁCIÓS RENDSZEREK II GYAKORLAT

Kötegelt nyomtatványok kezelése a java-s nyomtatványkitöltő programban (pl.: 1044 kötegelt nyomtatvány - HIPA; 10ELEKAFA - Elekáfa)

Objektumorientált programozás C# nyelven III.

Energiagazdálkodás. Dokumentum cikkszáma: Ez az útmutató a számítógép energiafelhasználását ismerteti április

Objektumorientált programozás C# nyelven

Diákigazolvány Elektronikus Igénylési Rendszer Oktatási Hivatal által biztosított igénylő felület. Felhasználói kézikönyv. v 4.1

Bevezetés. A WebAccess használatának bemutatása előtt néhány új funkció felsorolása következik:

libgdx Android Studio alatt

Reader /Writer InputStreamReader, OutputStreamWriter

ICR-E DVR ICR-E83H; ICR-E163H ICR-H41; ICR-H81 Felhasználóí kézikönyv ver 2.1

Gate Control okostelefon-alkalmazás

ARCHLine.XP Windows. Újdonságok. Felhasználói kézikönyv. ARCHLine.XP 2009 Újdonságok

GroupWise 5.2 használói jegyzet

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.

Az új be- és kimenet könyvtár

CodeBlocks installálási segédlet

Osztályszintű elérés, kivételkezelés, fájlkezelés

UNITIS Rt. Windchill PDMLink oktatóanyag PDMLink ügyességek Pro/ENGINEER Wildfire környezetben

Tápfeszültség. Felhasználói útmutató

Tipp A Word makrók kimerítõ tárgyalását megtalálhatjuk az O Reilly gondozásában megjelent Writing Word Macros címû könyvben.

Adósságrendezési eljárás - Ügyfél alkalmazás FELHASZNÁLÓI LEÍRÁS

Programozási technológia

Budapest, oldal

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto

Adattárolás Szenzorok

19. Hasításos technikák (hash-elés)

Dr. Pétery Kristóf: Excel 2007 feladatok és megoldások 2.

AIX 6.1. IBM Systems Director Console for AIX

Bánsághi Anna

1. ábra. Néhány tipikus ikon képe

UI megismerése - 2. rész Adattárolás

Java programozási nyelv

A program elérése. Google Chrome

Hivatal részére küldött iratok elektronikus benyújtása - Segédlet SEGÉDLET HIVATAL RÉSZÉRE KÜLDÖTT IRATOK ELEKTRONIKUS BENYÚJTÁSA

Szakdolgozat. Balázs Ádám Kuk József

14.2. OpenGL 3D: Mozgás a modellben

Kezdeti Útmutató a Szolgáltatáselemző Rendszer használatához. vezetők számára. Tartalom

SEGÉDLET ELEKTRONIKUS FELÜLET HASZNÁLATÁHOZ

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

Ismerkedés a Windows Explorer-rel

Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni?

Meghajtók Felhasználói útmutató


PC World október Microsoft Windows 98 magyar nyelvű változat Szolgáltatási útmutató II. Készítette: Móricz Attila

Karbantartás. Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat:

Használati utasítás ZOOM SOROZAT WIFI SMART ALKALMAZÁS

AZ ELEKTRONIKUS ÉPÍTÉSI NAPLÓ

MS Access Feladatgyűjtemény

WINDOWS ALAPISMERETEK

libgdx alapú program létrehozása, kép importálása, mozgatása libgdx alapok Android játékfejlesztés Soós András

Felhasználói útmutató. Személyi számítógép VPCYB sorozat

OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK. 2.1 A feladat

Kitöltési Útmutató a évi HOP monitoring adatszolgáltatás elektronikus kitöltéséhez január 21. verziószám: 01

117. AA Megoldó Alfréd AA 117.

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész

GroupWise 5.2 használói jegyzet

Programozási nyelvek Java

Az emelt szintű. informatika érettségi. programozási feladatainak. megoldása Java nyelven. NetBeans IDE 8.1 környezetben

DEHNsupport Toolbox - Kockázatelemzés Régi projektek megnyitása + mentés DEHN + SÖHNE / protected by ISO 16016

Felhasználói útmutató. Személyi számítógép VPCF2 sorozat

PHP II. WEB technológiák. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) PHP II / 19

Dr. Pétery Kristóf: AutoCAD LT 2007 Fóliák, tulajdonságok

Alcor Zest Q813IS Táblagép. Kezelési útmutató

Java Database Connectivity (JDBC)

Kommunikáció Androidon Mobilinternet Wifi

Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció

Bevezetés a Programozásba II 11. előadás. Adatszerkezetek megvalósítása. Adatszerkezetek megvalósítása Adatszerkezetek

Tanúsítási jelentés. Hung-TJ a MultiSigno Developer Professional. aláíró alkalmazás fejlesztő készletről. /Kopint-Datorg Rt.

CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )

szemináriumi C csoport Név: NEPTUN-kód: Szabó-Bakos Eszter

Dr. Pétery Kristóf: Windows XP Professional

FELHASZNÁLÓI KÉZIKÖNYV

KSHXML2 adatgyűjtési rendszer

Általános műveletek az asztalon

Kezdő lépések. Nokia N70-1

A WEB programozása - JSP1 dr.gál Tibor őszi félév

Cisco Unity Connection Mini Beérkezett üzenetek Els lépések (10.x kiadás)

Készítette:

Beállítások módosítása

AXEL Számlázó és készletnyilvántartó program

Tartalomjegyzék. Bevezetés...2

1. S Z O F T V E R E N G E D É LY E Z É S I S Z E R ZŐDÉS

Windows alapismeretek

OAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1.

4. lecke: Konyha tervezés

ANDROID ALKALMAZÁSFEJLESZTÉS

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

Felhasználói kézikönyv

Napfotók (webkamerás felvételek) képfeldolgozása

Pénzügyi algoritmusok

A Java nyelv. V. rész Az objektumorientáltság magasabb fokú tulajdonságai: Perszisztencia, CORBA, RMI

Átírás:

Példaprogramok Android alá (Lista, mentés, visszatöltés, pattogó android figura) Android alapok Android játékfejlesztés Godinek László

Tartalomjegyzék 1 Mentés... 1 1.1 A fájlmentésről röviden... 1 1.2 Fájl mentése a belső tárolóra... 1 2 Visszatöltés... 4 3 Lista... 6 3.1 Alapműveletek a listán... 6 4 Pattogó android figura... 9 4.1 A program rövid leírása... 9 4.2 Programkód bemutatása... 9

1 Mentés 1.1 A fájlmentésről röviden A legtöbb androidos programnál létfontosságú az adatok mentése. Gondoljunk csak arra, hogyha valamit módosítunk a beállításon, akkor a programnak ezt meg kell jegyeznie, hogy a következő induláskor ne az alapbeállítással startoljon, hanem ezzel a megváltoztatott paraméterrel. Ezenkívül számtalan példát lehetne hozni, de lássuk, hogy miként működik a fájlok mentése android operációs rendszeren. Minden androidot használó eszköznek létezik belső és külső tárolója. A belső tárolót a gyártók beleépítik az eszközbe, és ezt nem lehet eltávolítani. Ezzel szemben a külső tároló lehet egy SD kártya, mely kivehető az eszközből. Viszont vannak olyan készülékek, melyek csak egy beépített tárolóval rendelkeznek, és nincs lehetőség a bővítésre. Ezeknél szintén megtalálható a belső és külső tároló, itt a beépített tárolót két partícióra osztják. Belső tároló tulajdonságai: mindig rendelkezésre áll, az ide mentett fájlokat alapbeállítás szerint csak az a program érheti el, amelyik elmentette azt, a program eltávolításánál a rendszer az összes ehhez tartozó fájlt letörli a belső tárolóról. Külső tároló tulajdonságai: nem áll mindig rendelkezésre, mivel a felhasználó a külső tárolót USB-ként is működtetheti, és ebben az esetben az eszköz nem használhatja, a külső tárolóra mentett fájlokhoz bárki hozzáférhet, a program eltávolításánál nem minden esetben törlődnek a hozzá tartozó fájlok. A következőkben a belső tárolóra való fájlmentés lesz bemutatva. 1.2 Fájl mentése a belső tárolóra Az alábbi kódrészlet segítségével menthető egy string. 1. String filename = "myfile"; 2. String string = "Hello world!"; 3. FileOutputStream outputstream; 4. 5. try { 6. outputstream = openfileoutput(filename, MODE_PRIVATE); 7. ObjectOutputStream out = new ObjectOutputStream(outputStream); 8. out.writeobject(string); 9. out.flush(); 10. out.close(); 11. } 12. catch (Exception e) { 13. e.printstacktrace(); 14. } 1-> fájlnév megadása, 2-> string, amit a fájlba szeretnénk írni, 3-> csatorna létrehozása íráshoz, 6-> fájl megnyitása a megadott paraméterekkel, 1

7-> csatorna létrehozása íráshoz, mely segítségével objektumokat, és alap típusokat írhatunk (int, char, stb..), 8-> string kiirása, 10-> a megnyitott csatorna lezárása. Hozzunk létre egy új android projektet, majd másoljuk be a kódrészletet. Két helyen hibát fog jelezni, itt csak annyi a dolgunk, hogy a hiányzó részletet importáljuk, kattintsunk a sor elejére, majd import. 1. ábra Mentés Futtatás után a következőképpen tudjuk ellenőrizni, hogy a program elmentette-e a fájlt: A File Explorer alatt lépjünk be a data/data mappába, majd keressük meg a projekt nevét, nyissuk le a files mappáját, és ha sikeres volt a mentés, akkor ott megtalálható a fájl. Megnyitni viszont csak akkor tudjuk, ha átmásoljuk a számítógépre. 2. ábra DDMS megnyitása 2

3. ábra Mentett fájl megtekintése Kattintsunk a jobb felső ikonra, majd válasszuk ki, hogy hova mentse a fájlt. Megnyitás után ellenőrizhető a tartalma. 3

2 Visszatöltés Egészítsük ki a programot a következő kódrészlettel: 1. FileInputStream inputstream; 2. try { 3. inputstream = openfileinput(filename); 4. ObjectInputStream in = new ObjectInputStream(inputStream); 5. String tmp = ""; 6. tmp = (String)in.readObject(); 7. in.close(); 8. textview1.settext(tmp); 9. } 10. catch (Exception e) { 11. e.printstacktrace(); 12. } 1-> csatorna létrehozása olvasáshoz, 3-> fájl megnyitása olvasásra, 4-> csatorna létrehozása olvasáshoz, mely segítségével objektumokat, és alap típusokat olvashatunk (int, char, stb..), 5-> tmp tároló string létrehozása 6-> fájl tartalmának belemásolása a tmp stringbe 7-> fájl lezárása 8-> tmp string tartalmának megjelenítése egy textviewben Ahhoz, hogy a beolvasás látható legyen, definiálni kell egy textviewt, melybe belemásoljuk a már kiolvasott fájl tartalmát a stringből. Ezt tartalmazza a 8. sor. A teljes kódrészletet ehhez még plusz két sorral kell kiegészíteni, melyek a következők: Textview textview1; textview1 = (TextView)findViewById(R.id.textView1); 4

Beszúrás után: 4. ábra Visszatöltés 5

3 Lista A listában az elemek sorban helyezkednek el, így minden egyes elemre egy indexel lehet hivatkozni. Az első elem a lista 0. helyén található. Listát a következő parancs segítségével tudunk létrehozni: ArrayList<String> listaneve = new ArrayList<String>(); 3.1 Alapműveletek a listán 1. elem hozzáadása a lista végéhez 2. elem hozzáadása a lista egy meghatározott helyére 3. elem törlése 4. az összes elem törlése a listáról 5. lista másolása 6. keresés a listában 7. adott helyen levő elem lekérése 8. adott helyen levő elem lecserélése 9. a listában található elemek számának lekérése 1. Elem hozzáadása a lista végéhez listaneve.add("valami"); 2. Elem hozzáadása a lista egy meghatározott helyére (az az elem, amelyiknek a helyére beszúrjuk, eggyel jobbra csúszik, és a mögötte levők szintén) listaneve.add(3,"valami"); 3. Elem törlése meghatározott indexről listaneve.remove(3); 4. Összes elem törlése a listáról listaneve.clear(); 5. Lista másolása listaneve.clone(); 6. Keresés a listában listaneve.contains("valami"); 6

7. Adott helyen levő elem lekérése listaneve.get(3); 8. Adott helyen levő elem lecserélése listaneve.set(4,"valami"); 9. A listán található elemek számának lekérése listaneve.size(); A listát a következő parancsok segítségével tudjuk kiírattatni egy textviewba: for (int j = 0; j < listaneve.size(); j++) textview1.append(listaneve.get(j) + ", "); Konkrét példán az összes művelet: 7

5. ábra Műveletek listán, forráskódos 8

4 Pattogó android figura 4.1 A program rövid leírása A program kirajzol egy android figurát, és ha a képernyőn érintést érzékel, akkor elindítja azt abba az irányba. Minél távolabbi az érintés a bábutól, annál gyorsabban, és annál tovább fog mozogni. Egy idő után elkezd lassulni, majd teljesen megáll. Meg van határozva a képernyő szélessége és hosszúsága, így ha eléri a szélét, akkor onnan visszapattanva folytatja útját. 4.2 Programkód bemutatása A program három java filet tartalmaz: GyorsulasosMozgatas.java, GrafikaKirajzolasa.java, MainThread.java. GyorsulasosMozgatas.java A program az ebben a fájlban levő utasításokat hajtja végre elsődlegesen. Az alábbi parancs segítségével pedig áttér a következőre, vagyis a GrafikaKirajzolasa fájlra: setcontentview(new GrafikaKirajzolasa(this)); GrafikaKirajzolasa.java Változók, példányok: Függvények: thread: ez maga a szál, ami biztosítja, hogy a program folyamatosan fusson, számoljon és rajzolja ki az android figurát, MozgatandoFigura: az android figura, mely a képernyőn látható, maxy, maxy: a képernyőnk szélessége és hosszúsága, ezek között mozog a figura, xpoz,ypoz: a figura kezdőpozíciója, erox,eroy: meghatározzák, hogy mekkora erővel induljon el a figura, lassulas: hogyan lassuljon a figura. GrafikaKirajzolasa: konstruktor, SurfaceChanged: ez a függvény akkor hívódik meg, amikor a képernyő felülete megváltozik, például elfordítjuk a készüléket, ezáltal megváltozik a szélessége és hosszúsága, SurfaceCreated: elindítja a szálat, SurfaceDestroyed: szál leállítása, ontouchevent: ennek a függvénynek a segítségével kapjuk meg a képernyőn lenyomott pozíció koordinátáit, illetve meghatározza azt is, hogy milyen sebességgel induljon el a figura, ondraw: a figura folyamatos kirajzolása a képernyőre, mozgat: ez a függvény határozza meg, hogy a figurának hol legyen a következő megjelenése a képernyőn. 9

MainThread.java Függvények: setrunning: ez egy bool változót állít igaz vagy hamis értékre (szál futása, leállítása), MainThread: konstruktor, run: ez maga a szál, addig fut, amíg a running változó értéke igaz, minden egyes ciklusában meghívja a mozgat, és az ondraw függvényt. 10