Upload
sweidan-omar
View
214
Download
0
Embed Size (px)
Citation preview
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
1/42
Bevezets a mobilszoftverfejlesztsbe
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 1
Dr. Forstner Bertalan
Ekler Pter
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
2/42
Az elz rsz tartalmblMobilpiac szerepli
Vezetknlkli technolgikMobilhlzatok fejldse, genercik
BME-AAIT 2008 AMORG Template v1.1 2
Mobilkszlkek tulajdonsgai
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
3/42
Emlkeztek mg rKik a mobil piac fbb szerepli?
BME-AAIT 2008 AMORG Template v1.1 3
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
4/42
Emlkeztek mg rKik a mobil piac fbb szerepli?
Hlzati opertorok
BME-AAIT 2008 AMORG Template v1.1 4
Kszlkgyrtk
Felhasznlk
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
5/42
2. elads Mobilszoftverplatformok
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 5
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
6/42
Brking: Nokia 2011.02.11.Nokia f okostelefon platformja a jvben
a Windows Phone lesz (mikortl is?)
Symbiant leptik? Jelenle 200 milli S mbian telefon
felhasznl (iPhone: 4 v alatt sszesen 70 milli eladott
telefon)
2011-ben mg 150 Symbian-ra pl mobil-takarnak eladni
MeeGo egyelre marad ksrleti platform
BME-AAIT 2011 Mobilszoftverek 6
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
7/42
2. elads - Tartalom Bevezets
Mobil szoftverplatformok Java ME
P thon
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 7
Symbian OS
Windows Mobile
Maemo Android
iPhone OS
Egyb (ami kimaradt)
Meego
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
8/42
BevezetsA korai mobileszkzkre nem lehetett
harmadik flnek szoftvert fejleszteni
Mra a helyzet megvltozott: nem ritka,hogy egy kszlkre akr 3 klnfle
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 8
nye ven s e et szo tvert rn p . nat vC++, Java ME, Python)
Mobil szoftverplatform Programozsi nyelv
Kdknyvtrak
Fejleszteszkzk (SDK, emultor)
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
9/42
Symbian OS
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 9
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
10/42
Symbian OS - Bevezets Kifejezetten mobilkszlkekre
kifejlesztett opercis rendszer
Hardvererforrsokban szegny kszlkekre Gyenge processzor Kevs memria
Korltozott zemid (akkumultor) Magas rendelkezsre llsra tervezve
Reboot csak ritkn megengedett
Szemlyi adatkezel
funkcik OS szint
tmogatsa(kontaktok, naptr, stb.) Kommunikcis protokollok szles trhznak
tmogatsa
Jelenleg mg elssorban okostelefonokra BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 10
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
11/42
Symbian OS UI platformokA Symbian OS csak az alapjt kpezi a
mai kszlkek opercis rendszereinekErre minden esetben rpl egy UI
S60
UIQ
A klnbz UI platformra megrtalkalmazsok nem kompatibilisek
egymssal BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 11
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
12/42
Symbian OS - S60 platform: az egyeduralkod korbban Series 60 Bevitel billentyzettel vagy rintkpernyn
BME-AAIT 2008 Symbian OS tanfolyam A platform bemutatsa
2nd s 3rd kztt binris kompatibilitsi trs klnbz kijelzmretek s elrendezsek tmogatsa
S60 5th edition = Symbian ^ 1 Symbian Foundation a tulajdonos, open source
Nemrg jtt ki: Nokia N8, E7: Symbian ^ 3
ttrs Avkon UI-rl Qt felletre + Mobility API
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
13/42
Symbian OS FejlesztsNatv C++
Magt az opercis rendszert is C++-ban rtk
Alacsony szint API-k is elrhetk
A C++ nyelv egy korltozott, megktsekkel teli
verzijt hasznlja Hossz tanulsi id j szemlletet ignyel
Open C/C++ (Qt irnyba nyits) Java ME
Python
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 13
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
14/42
Java ME
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 14
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
15/42
Java ME - Bevezets Java Mobile Edition A Java technolgia mobilkszlkekre
kifejlesztett vltozata A legtbb mobilkszlk ltal tmogatott
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 15
Java alaptulajdonsgok Objektum orientlt
A programkdbl a specilis fordt gynevezettobject code-ot kszt (nem gpi kd!) Az object code-ot a kszlken fut Java virtulis
gp (JVM) futtatja, interpretlt mdon
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
16/42
Java csald
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 16
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
17/42
Java ME - Konfigurcik Az eltr kpessg mobilkszlkekhez kln konfigurcik
Konfigurci rszei:
Virtulis gp Alacsony szint API-k (ltalban Java SE API-k rszhalmaza +
mobil specifikus API-k) API: Application Programming Interface, programozi interfsz
Jelenleg kt konfigurci ltezik CLDC (Connected Limited Device Configuration)
Egyszer UI, kevs memria, gyenge processzor Pl. mobiltelefonok, egyszerbb PDA-k
CDC (Connected Device Configuration) Gazdag UI, tbb memria, hlzati protokollok tmogatsa Pl. Internet TV, PDA
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 17
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
18/42
Java ME - Profilok Egy adott konfigurcira tovbbi, magasabb
szint API csomagok plnek, ezek aprofilok
Mobile Information Device Profil (MIDP)
Egyetlen jelents profil CLDC-re API-kat tartalmaz UI kezelshez,
hlzatkezelshez, perzisztens adattrolshoz,stb.
Jelenleg MIDP 2.0 az elterjedt
Egy MIDP-re rt alkalmazst MIDlet-nek
neveznk BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 18
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
19/42
Java ME - Csomagok A profilokon tl tovbbi un. opcionlis
kiegszt csomagokkal bvthetk az API-k Pl. adatbzis kapcsolat, grafikai fggvnyek
Pldk
Siemens C55 CLDC 1.0 MIDP 1.0
Nokia 6600 CLDC 1.0 MIDP 2.0 JSR 205: Wireless Messaging API
Bluetooth BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 19
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
20/42
Python
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 20
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
21/42
Python - Bevezets Szkriptnyelv
Magas szint, objektum orientlt
Jl hasznlhat prototpus alkalmazsok gyorsfejlesztsre
A kdot nem kell lefordtani, egy futtatkrnyezet(interpreter) hajtja vgre
A futtatkrnyezet tbb platformra is ltezik (gy
elvileg platformfggetlen a kd) Windows
Linux
Mobil platformok (S60, Windows CE, Meego, stb.) BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 21
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
22/42
Fejleszts Pythonra Elnyk
Ingyenes (tbb platformra open-source is)
Stabil, kiforrott (Python mr a Java el
tt is ltezett!) jrafelhasznlhat komponensek j tmogatsa (objektumok,
modulok, stb.) Viszonylag knnyen integrlhat mr meglv C/C++/Java
a
Htrnyok Viszonylag kevesen fejlesztenek r, kevs pldaprogram,
irodalom, stb. Bizonyos alacsony szint funkcik nem elrhetk Az alkalmazsok teljestmnye gyengbb, lassabban futnak A futtatkrnyezetet ltalban kln kell telepteni (nem az
opercis rendszer beptett rsze)
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 22
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
23/42
Python S60-ra 1/2S60 a jelenleg legelterjedtebb Symbian-
alap mobil platformA standard Python knyvtrakon kvl
- -
SMS kezels
Telefnia
Kamerakezels 3D grafika (OpenGL ES)
Stb. BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 23
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
24/42
Python S60-ra 2/2Python programok futtatsa
1. Megrjuk a szkriptet PC-n2. Felmsoljuk a szkriptet a mobiltelefonra
betltjk s futtatjuk a szkriptetMire rdemes hasznlni?
Prototpusok ksztsre Egyszerbb mobil kliensek fejlesztsre
Tesztelshez
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 24
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
25/42
Windows MobileWindows Phone 7
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 25
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
26/42
Windows Mobile - BevezetsWindows mobil mutcija
Okostelefonokra (Windows Mobile Standard) PDA-kra (Windows Mobile Professional,
Windows CE-re pl
Az opercis rendszerhez hozz tartozik
szmos ismert alkalmazs mobil verzija(Excel Mobile, Word Mobile, stb.)
Jelenleg Windows Mobile 6.x, illetve WP7 BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 26
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
27/42
Windows Mobile Fejleszts 1/2 Java ME
Embedded Visual C++ .NET Compact Framework (CF.NET)
A nyelv pl. C# vagy Visual Basic .NET(objektum orientlt, magas szint)
IL kd kszl a fordts els fzisban
Just In Time Compilation (JIT): a binris kdkzvetlenl az alkalmazs futtatsa elttkszl el az eszkzn
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 27
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
28/42
Windows Mobile Fejleszts 2/2 .NET CF a .NET Framework
leszrmazottja
Az alapvet API-k itt is elrhetk (knnyportols)
Plusz API-k a mobilspecifikus funkcikhoz
Windows Forms-ra pl a UI
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 28
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
29/42
Windows Phone 7 Knnyen testreszabhat s mindig
friss home screen
Az gynevezett live tile-ok mindig alegfontosabb informcikat jelentikmeg v s, sms, nap r, r s,stb.)
Fejleszts Silverlight-ban (C#, VB)
Npszer szolgltatsokat integrl: XBOX Live
Office
BME-AAIT 2011 Bevezets a mobil szoftverfejlesztsbe 2. el ads 29
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
30/42
ex-Maemo, MeeGo
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 30
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
31/42
Meego- Bevezets Linux alap opercis rendszer
Internettblkra, mobilokra, set-top boxokra
Maemo + MobLin Internetezsre kifejlesztve
Nagymret rintkperny
Debian GNU/Linux Fejleszts
Rgen csak scratchbox, linux all
Python C/C++
Qt + Mobility API
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 31
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
32/42
MeegoLinux alklamazsok viszonylag knnyen
portolhatk r
Jelenleg mg elssorban Linux hekkerek
Maemo 5: Nokia N900
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 32
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
33/42
Android
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 33
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
34/42
Android - BevezetsOpen Handset Alliance (fszerepl a
Google) ltal fejlesztett mobilszoftverplatform
O ercis rendszer Linux kernel
Alapalkalmazsok
SDK jelenleg 2.4 (telefon) illetve 3.0
(tablet) verzinlKszlkek: egyre tbb gyrt
2011 janurban a legtbb eladott kszlk BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 34
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
35/42
AndroidTulajdonsgok
Nagyon nylt (legalacsonyabb szint funkcikis elrhetk)
menrendszert is lecserlhetjk) Webes szolgltatsok integrlsa (pl. Google
Maps)
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 35
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
36/42
Android - FejlesztsC/C++: Korltozott sdk (1.6)
Alacsony szint funkcikhoz
Java
Dalvik Virtual Machine Minden alkalamzsnak sajt processz s virtulis
gp Kis memriafogyasztsra optimalizlva
Magas szint, knyelmes (pl. UI XML-ellerhat)
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 36
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
37/42
Hello Android 1/2package com.android.hello;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
TextView tv = new TextView(this);tv.setText("Hello, Android");
setContentView(tv);
}
} BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 37
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
38/42
Hello Android 2/2
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 38
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
39/42
iPhone OS iPod Touch, iPhone, iPad
Jelenleg iPhone OS 4.x Objective C
XCode, Interface Builder,
Kzpontilag iGencsak kontrolllt terjeszts
Rengeteg elrhet iRodalom s dokumentci
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 39
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
40/42
Tovbbi opercis rendszerek 1 Palm OS, majd WebOS
Opercis rendszer begyazott rendszerekre
Alapveten PDA-kra Megvette a HP a Palm-ot Jelenleg nincs szmotteven jelen a piacon
Barcelonban most jelentettek be j mobilokat, tblagpet
OpenMoko Linux alap Teljesen nylt platform (mg a firmware-ek
nagy rsze is GPL licenszen) Qtopia-ra pl (Trolltech mobil UI platformja) Jelenleg egyetlen kereskedelmi
forgalomban kaphat kszlk: Neo (1973)
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 40
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
41/42
Tovbbi opercis rendszerek 2 BlackBerry
USA-ban igen elterjedt
zleti cl felhasznls
Szerver oldali alkalmazsok, vllalatiszinkronizci (push zenetek) tettk naggy
Flash Lite 3 (4), illetve Flash 10.1 Flash Player mobilokra optimalizlt verzija
Alapveten UI ksztsre, de kpes elrni akszlk bizonyos alacsonyszint funkciit is
Mg nem elg elterjedt, gyakran lass a vektoros
grafika miatt BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 41
8/3/2019 02 Bevezets a mobil szoftverfejlesztsbe
42/42
Teszt1. Mik a fbb mobil szoftverfejlesztsi
platformok?
2. Mi az, hogy interpretlt nyelv?
BME-AAIT 2008 Bevezets a mobil szoftverfejlesztsbe 2. el ads 42
3. a na v nye ven meg r a a maz soelnyei?