az android rendszer es a fejlesztoi kornyezet bemutatasa

Upload: bence-felgyoi

Post on 03-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    1/19

    Az Android rendszer s a fejlesztikrnyezet bemutatsa

    2012. februr 13.Sicz-Meszir Jnos

    [email protected]

    OE-NIK

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    2/19

    Az Android trtnete Eredetileg az Android Inc. fejlesztse volt

    Google Inc. 2005-ben felvsrolta

    Mra az Android mgtt tbb cg is (pl.: gyrtk)

    megtallhatOpen Handset Alliance (OHA)

    Els elrhet kszlk: T-mobile G1 (HTC Dream), 2008oktberben jelent meg, Android 1.0 rendszer (Base)

    Azta:

    2012.02.13.2

    Sicz-Meszir Jnos - OE-NIK

    Forrs:http://gs.statcounter.com/

    #mobile_os-ww-monthly-201001-201201

    http://www.openhandsetalliance.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://gs.statcounter.com/http://www.openhandsetalliance.com/http://www.openhandsetalliance.com/http://www.openhandsetalliance.com/http://www.openhandsetalliance.com/
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    3/19

    2012.02.13.3

    Sicz-Meszir Jnos - OE-NIK

    Android verzik

    Eclair

    Froyo

    Gingerbread

    Honeycomb

    Ice Cream Sandwich

    Tablet

    Okostelefon

    2.1

    2.2

    2.3

    3.0

    4.0

    Api level

    7

    8

    9, 10

    11

    14

    Api levelFolyamatosan nvekv szm

    Fejlesztskor hasznljuk a minimlisAndroid verzi megjellsre API level alapjn eset vlaszts.Pl.: adott funkci csak bizonyosverzi ta rhet el.Megknnyti a referenciban

    val tjkozdst (filter):http://developer.android.com/

    reference/packages.html

    Milyen verzirardemes fejleszteni?Kt hetente frissl statisztika:http://developer.android.com/resou

    rces/dashboard/platform-

    versions.html

    3.1

    3.2

    12

    13

    2.3.3 = 2.4

    4.0.34.0.4

    Jelly Bean5.0 ?

    15?

    http://developer.android.com/reference/packages.htmlhttp://developer.android.com/reference/packages.htmlhttp://developer.android.com/resources/dashboard/platform-versions.htmlhttp://developer.android.com/resources/dashboard/platform-versions.htmlhttp://developer.android.com/resources/dashboard/platform-versions.htmlhttp://crave.cnet.co.uk/mobiles/what-happened-to-android-2-4-gingerbread-its-2-3-3-instead-50003452/http://crave.cnet.co.uk/mobiles/what-happened-to-android-2-4-gingerbread-its-2-3-3-instead-50003452/http://developer.android.com/resources/dashboard/platform-versions.htmlhttp://developer.android.com/resources/dashboard/platform-versions.htmlhttp://developer.android.com/resources/dashboard/platform-versions.htmlhttp://developer.android.com/resources/dashboard/platform-versions.htmlhttp://developer.android.com/reference/packages.htmlhttp://developer.android.com/reference/packages.htmlhttp://developer.android.com/reference/packages.htmlhttp://developer.android.com/reference/packages.htmlhttp://developer.android.com/reference/packages.html
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    4/19

    Amit j tudni a platformrl Linux kernelre pl opercis rendszer

    http://developer.android.com/guide/basics/what-is-android.html#os_architecture

    Linux 2.6. kernelre pl, de az Android 4.0-tl mr az j 3.0. kernelre.

    Dalvik VM virtulis gpen menedzselt Java kd futtatsa(!= Sun JVM, s J2ME-vel sem kompatibilis)

    Open Source

    Prhuzamosan futhat tbb alkalmazs is (nincs megkts)

    Android Market: egy instant alkalmazspiac

    Ingyenes s fizets szoftverek (30%-70%) ill. alkalmazsonbelli vsrls lehetsge (2.3 ta)

    Offline alkalmazstelepts (unknow source) megengedett

    A mobilalkalmazs egyetlen fjlbl ll (.apk)

    Fejleszti krnyezet is ugyangy fejldik, mint maga arendszer (ADT)

    2012.02.13.4

    Sicz-Meszir Jnos - OE-NIK

    http://developer.android.com/guide/basics/what-is-android.htmlhttp://developer.android.com/sdk/eclipse-adt.htmlhttp://developer.android.com/sdk/eclipse-adt.htmlhttp://developer.android.com/guide/basics/what-is-android.htmlhttp://developer.android.com/guide/basics/what-is-android.htmlhttp://developer.android.com/guide/basics/what-is-android.htmlhttp://developer.android.com/guide/basics/what-is-android.htmlhttp://developer.android.com/guide/basics/what-is-android.html
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    5/19

    Programozs

    2012.02.13.5

    Sicz-Meszir Jnos - OE-NIK

    SDK - Java (Dalvik VM)

    NDK - C/C++ (Natv kd, Java kdbl elrhet - JNI) ADKAccessory Development Kit(3.1 ta) Tovbbi ksrletek

    Script nyelvekkel (SL4A segtsgvel)Pl.: Python, Perl, JavaScript, http://code.google.com/p/android-scripting/

    C# (MonoDroid kezdemnyezs)http://monodroid.net/

    Fejleszts Hivatalosan tmogatott IDE: Eclipse Az SDK rendelkezik emultorral (kicsit lass, idnknt

    problms szenzorok?) Futtathatunk kzvetlen telefonon (gyors, knyelmes de

    kell kszlk) Biblink: http://developer.android.com/

    +1 rdekessg:Android app Windows-on

    http://developer.android.com/guide/topics/usb/adk.htmlhttp://code.google.com/p/android-scripting/http://monodroid.net/http://developer.android.com/http://bluestacks.com/http://bluestacks.com/http://bluestacks.com/http://bluestacks.com/http://bluestacks.com/http://bluestacks.com/http://bluestacks.com/http://bluestacks.com/http://developer.android.com/http://monodroid.net/http://code.google.com/p/android-scripting/http://code.google.com/p/android-scripting/http://code.google.com/p/android-scripting/http://developer.android.com/guide/topics/usb/adk.htmlhttp://developer.android.com/guide/topics/usb/adk.htmlhttp://developer.android.com/guide/topics/usb/adk.htmlhttp://developer.android.com/guide/topics/usb/adk.htmlhttp://developer.android.com/guide/topics/usb/adk.html
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    6/19

    Android alkalmazsokrl Az alkalmazsok egyenrangak

    Minden programot s kpernyt egy stack-be rgzt

    Vissza (Back) gomb hatsra az elz elemre vlt t(Gyakorlatilag, mint bngszben az elzmnyek)

    Az alkalmazsok (hivatalosan) nem bezrhatak, ezt maga arendszer vgzi, ha szksg van r. (Pl.: kevs memria)

    Nem ablakok, hanem teljes kpernyt kitlt Activity-k Egy alkalmazs tbb Activity-blllhat

    Minden Activity-nek sajt letciklusa van!

    2012.02.13.6

    Sicz-Meszir Jnos - OE-NIK

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    7/19

    Activity letciklus modell

    2012.02.13.7

    Sicz-Meszir Jnos - OE-NIK

    Forrs:http://developer.android.com/guide/t

    opics/fundamentals.html#actlife

    Ugyanez mskpp:

    http://www.google.hu/images?q=android+activity+lifecycle

    Clja:Vratlan esemnyek kezelse.Pl.: bejv hvs, akku merlseErforrsok hatkony kezelse

    A modellen brzoltmetdusokat a rendszer

    automatikusan meghvja,amikor az szksges.

    http://developer.android.com/guide/topics/fundamentals.htmlhttp://developer.android.com/guide/topics/fundamentals.htmlhttp://www.google.hu/images?q=android+activity+lifecyclehttp://www.google.hu/images?q=android+activity+lifecyclehttp://www.google.hu/images?q=android+activity+lifecyclehttp://www.google.hu/images?q=android+activity+lifecyclehttp://developer.android.com/guide/topics/fundamentals.htmlhttp://developer.android.com/guide/topics/fundamentals.html
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    8/19

    Fragments API

    2012.02.13.8

    Sicz-Meszir Jnos - OE-NIK

    Tervezsi filozfia nagyobb kpernyk kezelsre Gyakorlati szempontbl megadhatjuk mely felletek

    kerlhetnek egyms mell.

    Bvebben:http://developer.android.com/guide/topics/fundamentals/fragments.html

    http://developer.android.com/guide/topics/fundamentals/fragments.htmlhttp://developer.android.com/guide/topics/fundamentals/fragments.htmlhttp://developer.android.com/guide/topics/fundamentals/fragments.html
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    9/19

    Fejleszti krnyezet

    2012.02.13.9

    Sicz-Meszir Jnos - OE-NIK

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    10/19

    Fejleszti krnyezet teleptseMi kell hozz?

    JDK teleptse

    Eclipse IDE

    Android SDK

    ADT plugin (ADT = Android Development Tools)

    Hogyan?

    Windows:http://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa

    _Windowson.pdf

    Ubuntu 10.04 s felette:http://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa

    _Ubuntu_10.04_en.pdf

    Eredeti lers:http://developer.android.com/sdk/installing.html

    2012.02.13.10

    Sicz-Meszir Jnos - OE-NIK

    http://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa_Windowson.pdfhttp://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa_Windowson.pdfhttp://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa_Ubuntu_10.04_en.pdfhttp://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa_Ubuntu_10.04_en.pdfhttp://developer.android.com/sdk/installing.htmlhttp://developer.android.com/sdk/installing.htmlhttp://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa_Ubuntu_10.04_en.pdfhttp://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa_Ubuntu_10.04_en.pdfhttp://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa_Windowson.pdfhttp://szyrt.hu/downloads/Docs/Android_fejleszto_kornyezet_kialakitasa_Windowson.pdf
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    11/19

    j Android projekt File > New > Other > Android > Android project

    2012.02.13.11

    Sicz-Meszir Jnos - OE-NIK

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    12/19

    Ismerkeds a fellettel

    2012.02.13.12

    Sicz-Meszir Jnos - OE-NIKMunkaknyvtr

    Debug

    (ADB)

    Kszlkek &Emulator, ill. fut

    alkalmazsokForrskdok

    Futtats

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    13/19

    A munkaknyvtr szerkezete

    2012.02.13.13

    Sicz-Meszir Jnos - OE-NIK

    src/ Az Activity Java fjljai s minden egyb Java fjl.

    gen/ ADT ltal generlt R.java fjl helye. Segtsgvel rhetjk

    el Java kdbanaz res/ knyvtrban tallhat tartalmakat.assets/ Alaprtelmezetten res knyvtr. RAW (nyers adat)

    tartalmakat trolhatunk itt.

    res/ Klnbzforrsok, melyeket beptennk azalkalmazsba.

    res/drawable/ Kpeks rajzok. Pl.: PNG, JPG, GIF, Ikonok, Drawable-tler XML-ek (selector, shape, )

    res/layout/ Activity fellett, layout-okat ler XML fjlok.

    res/menu/ Men felptst ler XML-ek. Pl.: Options men

    res/values/ Klnbz rtkek, szvegek, szmok, sznek, tmbktrolsa XML formban. Pl.: nyelvi fjlok

    res/xml/ Tovbbi XML-ek, pl.: Bellts felletnek lersa

    AndroidManifest.xml Fontos informcik, hasznlati jogok, min. SDK verzi,Activity-k, Service-ok, Broadcast-ek nylvntartsa, stb

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    14/19

    Futtats: Emultoron

    2012.02.13.14

    Sicz-Meszir Jnos - OE-NIK

    j Android virtulis eszkz

    hozzadsaWindow > Android SDK and AVD

    Manager > New

    BellthatjukHardveres jellemzket Android verzit

    Emultorrl tudni rdemes:Lasscska szegnyNew/Edit utn, els indtskormindig lassabb, mint egybkntEmultor is egy virtulis gpNem mindent tmogat: szenzorok,bluetooth, Emultor irnytsa billentyzettel

    http://developer.android.com/guide/developing/devices/emulator.htmlhttp://developer.android.com/guide/developing/devices/emulator.html
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    15/19

    Futtats: Emultoron (2)

    2012.02.13.15

    Sicz-Meszir Jnos - OE-NIK

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    16/19

    Futtats: Kzvetlenl telefonon

    2012.02.13.16

    Sicz-Meszir Jnos - OE-NIK

    1. "debuggable jelz belltsa AndroidManifest.xml-ben!

    2. Telefonon USB debugging engedlyezse!

    Settings > Applications > Development3. USB driver letltse az ADB-nek (Android Debug Bridge):

    Window > Android SDK and > Available packages > Third party

    Vagy OEM Driverek:http://developer.android.com/sdk/oem-usb.html

    4. USB kbellel sszektd (Kbelt nem otthon hagyni!)Az ADB teleptsnl meg kell adni a driver helyt.

    5. Szksg esetn az Eclipse s/vagy rendszer jraindtsa

    Ha sikerlt, akkor hasonl:

    Eredeti lers :http://developer.android.com/guide/developing/device.html

    http://developer.android.com/sdk/oem-usb.htmlhttp://developer.android.com/sdk/oem-usb.htmlhttp://developer.android.com/sdk/oem-usb.htmlhttp://developer.android.com/guide/developing/device.htmlhttp://developer.android.com/guide/developing/device.htmlhttp://developer.android.com/guide/developing/device.htmlhttp://developer.android.com/guide/developing/device.htmlhttp://developer.android.com/sdk/oem-usb.htmlhttp://developer.android.com/sdk/oem-usb.htmlhttp://developer.android.com/sdk/oem-usb.htmlhttp://developer.android.com/sdk/oem-usb.html
  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    17/19

    Debug - DDMS

    2012.02.13.17

    Sicz-Meszir Jnos - OE-NIK

    Dalvik Debug Monitor Server

    Eclipse-ben: Window > Open Perspective > Other... > DDMS

    Fggetlenl: *SDK path] / tools / ddms.bat

    1. Breakpoint elhelyezse, mint

    brmely ismert fejlesztikrnyezetben.

    2. Devices fl alatt a kivlasztottkszlken az adott alkalmazs

    debug mdba kapcsolsa.

    Lpsei:Debug mdba tesszk

    Breakpoint elhelyezve A debug mdban futtatottalkalmazs lass.De utlag is tvlthatunk!

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    18/19

    Debug(2) - LogCat

    2012.02.13.18

    Sicz-Meszir Jnos - OE-NIK

    Kszlk vagy emultor kivlasztsa a Devices fln

    LogCat fl alatt listzdik minden ami a rendszerben trtnik

    Ajnlott filter hasznlata:

    Log.d("cimke", "Ez trtnik:" + this.toString());

    j szr:

    j szr

  • 7/29/2019 Az Android Rendszer Es a Fejlesztoi Kornyezet Bemutatasa

    19/192012 02 13

    19Sicz Meszir Jnos OE NIK