Tải bản đầy đủ (.pdf) (77 trang)

Tìm hiểu hệ điều hành android và xây dựng ứng dụng cờ vua trên android

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.51 MB, 77 trang )

TRlTCfNG DAI HOC AN GIANG
KHOA KY THUAT - CONG NGHE - MOI TRlTONG

LE VIEN TRINH - DTH092088
KHOA LUAN TOT NGHEEP DAJ HQC NGANH CU* NHAN TIN HQC

TIM HIEU HE DIEU HANH ANDROID VA
XAY DU^VG UNG DUNG C6 VUA TREN
ANDROID
TR^6NG B/^ HQC
AN GIANG

THlJVIEN

Giang vien hirong dan

ThS. Nguyen Thai Du

An Giang, 05/2013


LCXI CAM ON
Con xin chdn thdnh gui lai cam mi sau sac nhdt vd kinh trqng nhdt den cha me, gla
dinh da diu ddt con suot nhung chdn duang ddi, giup con vuat qua nhung kho khan
thic thdch trong cudc song cung nhu trong qudng dm sinh Mien.
Be hodn thdnh khoa ludn nay, em xin to long biet cm sau sac den thdy Nguyen Thai Du
da tan tinh huang dan trong suot qua trinh thuc hien khoa ludn tot nghiep.
Em chdn thdnh cam cm quy thdy co trong bo mon Tin hqc, khoa KT thudt Cong nghe
Mdi trudng, truang Dai hoc An Giang da tan tinh truyen dqt kien thuc trong 4 ndm
hoc. V&i von kien thuc dit^c tiep thu trong qua trinh hoc khdng chi Id nen tang trong
qua trinh nghien cuu khoa ludn md con Id hdnh trang quy bdu de em buffc vdo dm mqt


each vung chdc vd tu tin. Em cung xin kinh chuc quy thdy, co ddi ddo sue khde vd
thdnh cdng trong su nghiep cao quy.
Sau cung, tdi xin gui lai cam cm den tat cd ede nguai ban, nhung ngum anh em da
cung tdi chung vai, ddng vien vd giitp tdi vuqt qua moi kho khan, thu thdch trong suot
qudng duang sinh vien...

LongXuyen, ngdy 14 thdng 5 ndm 2013
Sinh vin thyc hien

Le Vien Trinh - DTH092088


NHAN XET CUA GIANG VIEN HtfCXNG DAN

Giang vien huong dan
(Ky va ghi ro ho ten)

N6i dung nhan x

Dong y hay khong flong y cho sinh vien bao cao KLTN; Neu khong c!6ng y cSn ghi ro ly do.
Ket qua dat dir^rc so vdi yeu cau;

Y kien khac (neu co)


PHAN TOM TAT
PHAN I: TONG QUAN BE TAJ
M6 ti v8 tong quan dS tai, tong quan v8 he dieu hanh va lap trinh game tren dipn thoai,
dat ra muc tieu tu tong quan dSn cu thl cho d8 tai, n8u ra ly do chpn de.tai, gidi thieu
lich su va xu hudng phat trien cua de tai. Gidi han pham vi he thong, dira ra giai phap

cho he thong va cong cu duac sic dung trong de tai.

PHAN II: CO Sd LY THUYET
Trinh bay khaj quit ye npi dung ciia d8 tai duac nghien cuu va xay dimg, cac khai
niem v8 cd vua, cd th8 va cac luat trong cd vua.

So lupc ki8n tnic va n8n tang cua he di8u hanh Android cho thiet bi di dpng, cac cong
cu phat tri8n ling dung Android tr8n nen di dpng. Mo ta va giai thich v8 cac giai thuat
chinh sit dung trong viec phat triln ling dung.

PHAN III: NOI DUNG VA KET QUA NGHIEN CLTU
Trinh bay cac phan phan tich thiet k8 ve nghiep vu he thong dam bio cic y8u cau thvrc
t8 cua he thong dat ra, dim bio thuc hien day dii va dung chiic nang cua he thong.

PHAN IV: TONG KET VA HUOfNG PHAT TRIEN
Tom tit nhung k8t qui dat dupe va dfing thai neu len nhung h^n ch8 cua d8 tai. B8n
canh do cung dua ra duac hudng phit triSn cho d8 tai.


Khoa luan tot nghiep

MUC LUC
Chucmg 1. TONG QUAN CUA BE TAI1
1.1.Sa luac ve cac he dieu hanh tren nen dien thoai ^1

1.1.1.He diu hanh BlackBerry cua RIM:i
1.1.2.He diu hanh iOS cua Apple'.'..1

1.1.3.He di6u hanh Android cua Google1
1.1.4.He dieu hanh Symbian cua Nokia1

1.2.Tong quan ve lajp trinh game tren dien thoai1
1.3.Ly do chpn dl tai2
1.4.Ljch stt de tai2
1.5.Cong cu th^rc hien3
1.6.Pham vi he th6ng4
1.7.Giai phap cho he th6ng4

Chucmg 2. CO SO LY THUYET5
2.1.Khaiquatvg he diSu hanh Android5
2.1.1.So luac ve ljch su phat trien:5
2.1.2.Mot so tfnh nang ca ban5
2.1.3.Uhg dung....6

2.2.Nen tang va kien true ciia he dieu hanh Android6
2.2.1.Phln ciing6
2.2.2.Ki6n true nn tang Android7
2.2.3.Kien true iing dung•10

2.3.Khai quat v6 Co vua va luat Co vua10
2.3.1.Gidi thieu Ca vuaHO
2.3.2.Cac quan cdva luat diHI

2.4.Khai niem Cd thS12
2.5.So lupc ve caC bp eong c^ phat trien ung dyng - SDK (Software Development
Kit) va cac moi truang phat trien tich hap - IDE (Intergated Development
Environment) cho Android13
2.5.1.Android SDK13
2.5.2.Eclipse vaADTPlugin14



Khoa luan t6t nghiep
2.6.Giai thuat Minimax va giai thuat cai tign Alpha-beta[6)14
2.6.1.Gidithieu...14

2.6.2.Tro chai co tong bang khong15
2.6.3.Binhly Minimax15
2.6.4.Giai thuat Minimax16
2.6.5.Giai thuat cai tiln Alpha-beta19
2.6.6.So sanh giai thuat Minimax va giai thuat Alpha-beta22
2.7.Ung dung23
• 2.7.1. Danh gia mot thg co23

'2.7.2. Phuong thiic Alpha-beta27
2.7.3. Phtromg thiic MiniMax34
Chtiong 3. PHAT TRIEN HE THONG'.38
3.1.Nghiep vu he th6ng38
3.2.Phan tich he th6ng39
3.2.1.So d6 Usecase39
3.2.2.Dae tiUsecase.-40

3.2.3.Thigt kg he th6ng49

Chuong 4. TONG KET VA Hir^NG PHAT TRIEN67
4.1.Kgt qua dat (lucre^!...67

4.1.1.Lythuygt67
4.1.2.Ap dung vao he thong67
4.2.Hanchg67

4.3.Huong phat trign67


TAI LIEU THAM KHAO68


Khda luan tot nghiep

DANH MUC HINH

Hinh 2.2.2 : Cac ting cua he diiu hanh Android8
Hinh 2.2.2.1 : Ting Linux Kernel 2.6 trong Android8
Hinh 2.2.2.2 : Ting Android Framework9
Hinh 2.2.2.3 : Ting Application Framework9
Hinh 2.2.2.4 : Ting ung dung10
-Hinh 2.2.3 : KiSn true ling dung10
Hinh 2.3.1: Cac quan co tren ban cd vua11
Hinh 3.1. Quy trinh quan ly tro choi Co vua38
Hinh 3.2.1. Usecase th\rc hien cac chiic nang tong quan cua he thong40
Hinh 3.2.3.1.1: Cac thanh phin tuong tac ciiakiSn true.-49
Hinh 3.2.3.1.2: So do chiic nang ciia he thong50
Hmh 3.2.3.1.3: So dg giao dien cua he thing51
Hinh 3.2.3.2.1: Giao dien chinh ciia tro choi51
Hinh 3.2.3.2.2: Giao dien chinh chiic nang "choi moi"52
Hinh 3.2.3.2.3: Giao dien chinh chiic nang "choi tigp"52
Hinh 3.2.3.2.4: Giao dien chiic nang "choi ta do"53
Hinh 3.2.3.2.5: Giao dien chiic nang "giai co thi"53
Hinh 3.2.3.2.6: Giao dien chiic nang "choi quamang"54
Hinh 3.2.3.3.1: Luqc d<3 tain ta "choi mdi":..55
Hinh 3.2.3.3.2: Luqc d6 hoat dpng "choi mdi"55
Hinh 3.2.3.4.1: Luqc d6 tain ta "choi tiip"57
Hinh 3.2.3.4.2: Luqc d6 hoat dqng "choi tigp"58

Hinh 3.2.3.5.1: Luqc d6 tain ta "choi ta do"60
Hinh 3.2.3.5.2: Luqc dd hoat dqng "choi ta do"61
Hinh 3.2.3.6.1: Luqc d6 tain tq "giai co thg"62
Hinh 3.2.3.6.2: Luqc d6 hoat dqng "giai cd thg"63
Hinh 3.2.3.7.1: Luqc d6 tain ta "choi qua mang"65
Hinh 3.2.3.7.2: Luqc d6 hoat dqng "choi qua mang"66


Khda luan t6t nghiep

DANHMUCBANG

osBQlao
Bang 1.5: Bang cong cu thuc hien3
Bang 2.2.1: Nhung yeu cau cho phan cung cua thiet bi Android7
Bang 2.5.1: Yeu cauphin cung cho cac thdnhphan cua Android SDK13
Bang 2.6.6 : Bang so sdnh s6 nut phdi xet giua hai thuat gidi Minimax va
Alpha-Beta22
Bang 312.2.1: Bang dac t4 Usecase choi mod41
Bang 3.2.2.2: Bang dac t& Usecase chod trr do41
Bang 3.2.2.3: Bang dac ta Usecase choi tiSp42
Bang 3.2.2.4: Bang dac ta Usecase phuc hdi nude di42
Bang 3.2.2.5: Bang dac ta Usecase huy phuc hoi nude di:43
Bang 3.2.2.6: Bang dac td Usecase caidat43
Bang 3.2.2.7: Bang dac td Usecase luu ban cd44
Bang 3.2.2.8: Bang dac ta Usecase choi cd44
Bang 3.2.2.9: Bang dac ta Usecase Giai cd thS45
Bang 3.2.2.10: Bang dac ta Usecase Choi quamang46
Bang 3.2.2.11: Bang dac ta Usecase luu ban cd tu do46
Bang 3.2.2.12: Bang dac ta Usecase luu nude cd47

Bang 3.2.2.13: Bang dac ta Usecase chup ban cd47
Bang 3.2.2.14: Bang dac ta Usecase cdi dat choi to do48
Bang 3.2.2.15: Bang dac ta Usecase gpi y nude di48
Bang 3.2.3.1: Bang yeu cdu he thdng50


Khoa luan t6t nghiep

DANH MUC TlT VIET TAT

Y nghia

Tfrviettat
ADT .

Android Development Toolkit

CDMA

Code Division Multiple Access

EDGE

Enhanced Data rates for GSM
Evolution

GSM
IDEN
LTE
MIDP

NFC •

RIM
UMTS
WAP

Global

System

for

Mobile

Communications

Integrated

Digital

Enhanced

Network
Long Term Evolution
Mobile Information DeviceProfile
Near field communication
Research In Motion

The


Universal

Mobile

Telecommunications System
Wireless Application Protocol


Khda luan tot nghidp

Chucmg 1. TONG QUAN CUA BE TAI
1.1.Sff lucre ve ede he dieu hdnh tren nen dien thoaiIS1
1.1.1.Hf dieu hanh BlackBerry cua RIM
BlackBerry OS la ndn tang phin mdm ta huu do RIM phat tridn cho ddng san
pham cam tay BlackBerry. He dieu hanh BlackBerry cung cdp kha nang da nhiem' va
dugc thiet kd cho cac thiet bi su dung phuong phap nhap dac bidt. He dieu hanh dugc
ho trg la MIDP 1.0 va WAP 1.2. BlackBerry cung cap rat nhidu nhung tinh nang, no
con co nhung didm manh n6i bat khac nhu- BlackBerry Maps, cung cip khd nang da
nhiem manh me.

1.1.2.He dieu hanh iOS cua Apple
iOS la he didu hanh tren cac thiet bi di dong cua Apple. Ban diu he dieu hanh
nay chi dugc phat tridn dd chay tren iPhone, nhung sau do no dugc md rgng dd chay
tren cac thiet bi cua Apple nhu iPod Touch, iPad, va Apple TV. Giao dien ngudi dung
cua iOS dua tren co sd thao tac bing tay. Ngudi dung cd thl tiiong tac vdi he didu
hanh nay thong qua rat nhieu dgng tac bang tay tren man hinh cam ung thiet bi cua
Apple. He dieu hanh nay dang dugc gidi thugng luu ua chuong, vdi nhiing tinh nang
vugt trgi ve giao dien cung nhu kha nang dap ung cao v8 mat cdng nghe nen he didu
hanh nay dang giu vi tri xep hang cao.
1.1.3.He dieu hanh Android cua Google

Android la he dieu hanh tren dien thoai di dong, may tinh bang (va hien nay la
cd tren mot sd ddu phat HD, TV thong minh) phat tridn bdi Google va dua tren ndn
tang Linux. Trudc day, Android dugc phat tridn bdi cdng ty lien hgp Android (sau do
dugc Google mua lai vao nam 2005. Android cd mot cdng ddng nhiing nha phat tridn
rat ldn viet cac ling dung cho he didu hanh cua minh. Cac nha phat tridn vidt ung dung
cho Android dua tren ngdn ngu Java. Su ra mat cua Android g&n lien vdi su thanh lap
cua lien minh thiet bi cam tay ma ngudn md da tao ndn mot chuin md cho dien thoai
di ddng trong tucmg lai.
Android dang dugc nhidu ngudi hudng den va dac biet la tai Viet Nam. E)idm
m^nh cua Android nam d chd no la mot he thdng hoan toan md ndn ai cung cd thd phat
tridn ung dung.
1.1.4.He dieu hanh Symbian cua Nokia
Symbian la h? dieu hanh dugc vidt va su dung cho _mdt sd dien thoai di ddng.
Symbian dugc su dung nhidu nhat bdi cac dien thoai cao cdp cua Nokia, vdi Symbian
dang tirng budc khang dinh vi thd cua minh tren lihh vuc dien thoai thdng minh
(stnartphone). Dac biet day la he di^u hanh ma ngudn md. Cac ham APIs dugc cdng
bd rdng rai dd bat cd ai cung cd thd phat tridn phan mdm cho Symbian OS, didu nay
dugc dat ra dd day manh kha nang canh tranh cua Symbian. Tuy nhidn hien nay,
Symbian da di vao giai doan thoai trao do khdng ctinh tranh vdi cac he didu hanh mdi
tan tidn hem nhu iOS, Android... So ngudi dung cang ngay cang it khidn thi phdn
Symbian thu hep va trd ndn khidm ton so vdi cac ndn tang khac.
1.2.Tong quart ve lap trinh game tren dien thoai
Hien nay cac thiet bi di dgng ngay cang phat tridn phd bidn va manh me, ndn
cdng nghiep chd tao cac thiet bi di dong cung nhanh chdng phat tridn dd don ddu xu
Tim hidu he didu hanh Android va xay dung ling dung cd vua tren Android1


Khda luan tot nghiep
the hien dai. Bien thoai di dpng da tra thanh mot thidt bi cam tay rat quen thudc va gan
gui vdi mdi chiing ta. Chiec dipn thoai di dpng bay gib khdng con la cong cu chi thuc

hien cac tac vp don gian nhu gpi va nhiin tin nfla ma con co the phuc vu cho ngubi
dung nhu giai hi, nghe_ nhac, va doc bao va vo van cac ung dung khac phuc vu cho

cupc song con ngubi tot han. Rieng doi vdd game hen dien thoai di dpng da va dang
ngay cang phat triln vupt bac. Chinh vi nhu ciu cao nen lap hinh game hen dien thoai
di dpng ngay cang co doanh thu cao. Tuy nhien dl phat hien mdt game hen di dpng
doi hoi ngubi lap hinh phai co tu duy vl giai thuat va do hpa cung nhu da tung choi
nhieu game. Ngdn ngu lap hinh de phat hien game hen di dpng thi co Java, C#,
C/C++, va Objective C. Trong do ngon ngu Java la ngon ngu dupe sii dung phd bien
do no co thl lap hinh cho nhilu thilt bi ph6 bin nhu cac thiet bi chay hen nen
Android, Symbian, BlackBerry va cac thiSt bi h hp n6n Java khac,...
Noi chrmg, lap hinh game da hd thanh mOt nganh cong nghiep. Vdi su phat
hi8n nhanh chdng va vu bao ciia cac thi^t bi di dpng thi lap hinh game da hd thanh
mpt xu hudng thdi thupng hong giai he cung nhu co vi th6 ngay cang cao va phat
hien hong tuong lai.

1.3.Ly do chpn di tai
Vdi sir phat hien manh me cua cac thiSt bi di dpng cung nhu xu hudng cong nghe hien
dai, he dieu hanh hen cac thiSt bi di dpng cungmau chdng phat hi In. Cac he dilu hanh
dang chiem thi phan da sd hen cac thiSt bi di dpng la BlackBerry cua RIM, hp dieu
hanh iPhone cua Apple, Android ciia Google, Symbyan cua Nokia. Nhung xet vl muc
dp phd bieh doi vdi ngudi su dung hen the giai cung nhu tai Viet Nam thi he dieu
hanh Android la he dieu hanh dupe ua chupng cung do tinh md cung nhu kha nang ho
hp cac ling dung manh me cua no. Ngoai ra game cung la mot mdn an tinh than khong
the thieu ciia con ngudi, giiip giai tda cang thang sao nhung gib hoc tap va lam viec
vat va. Ben canh do, cac game co tinh tu duy va chien thuat cung la xu the phat hien
game ngay nay. Cung chinh hai li do do, toi xin chpn de tai "Tim hilu he dieu hanh
Android va viet ting dung co1 vua tren nen Android". Ngoai nhung li do hen thi
viec tao cho ban than co them mot phan kien thuc ve lap hinh Android cung nhu la tu
duy va giai thuat ve lap hinh game cung la dpng lire chinh- hong viec lira chpn de tai

nay.

1.4.Lick su de tai
Phan sau gidi thieu mot sd game vl cd vua ndi tilng.
- Kasparov Chessmate

Kasparov Chessmate la phan mem choi cd vua noi tieng dupe xay dung d^a hen ki
nang choi cd that ciia vua cd Kasparov, ngudi da dau hda vdi sieu may tinh va cac
thanh vien hong cau lac bp cd vua ciia ong. Game dupe phat hien bdi chinh Kasparov
va cac chuyen gia phan mem may tinh. Trd choi mang tinh doi khang cao, ben canh do
ban co the choi vdi bat ki nhan vat nao va lira chpn hdi dap vdi Kasparov de dupe cd
van va hoc hdi. Phan mem nay that su cd ich vdi nhirng ai yeu thich bp mdn cd vua.
Hien tai da cd mot phien ban cua game hen he dieu hanh Windows Mobile.

Tim hieu he dieu hanh Android va xay dung ling dung cd vua treri Android


Khda luan t6t nghiep

-Chess Rally 2
Chess Rally la mpt game cd vua cpc hay, khdng the thieu dupe doi vdi nhung ai dam
me mon cd trf tue nay. So vdi phien ban 1, phien ban mdi Ian nay co nhieu cai tien,
dac biet la vita choi vita co thi chat vdi cac ki thu tieng Anh va cac ki thu noi tieng
tren the gidi. Ngudi choi co the danh cd true tuyen vdi nhieu ngudi khac.
-3D War Chess 1.1

Neu da timg sd dung qua cac trd choi cd vua trudc day, cd le doi vdi nhung ngudi yeu
thich hanh dpng thi cac quan con qua don dieu. Nhung khi ngudi choi cd vua bang
phan mem 3D War Chess thi ngudi choi se cam nhan dupe su manh me trong cac pha
ra don cita quan cd. U"u dilm ndi bat cua phien ban choi cd vua nay la cac quan cd da

dupe sinh dpng hda mot each tdi da. Quan ccr se dupe chia lam hai dpi quan rieng biet,
va timg quan deu cd nhung thi vo rdt dep mit.
-Knight's Gambit
Knight's Gambit \h trd choi cd vua dupe nhieu ngudi yeu thich vinhung tinh nang
manh me ciia no nhu : cai dat lhth hoat vdi muc dp khac nhau cho nhung ngudi choi
cd ki nang khac nhau. Nhilu ngudi choi qua mang, cho phep chpn bai hat MP3, choi
2D va 3D.
Nhan xet
-Hau het cac chuong trinh game deu choi cd rat tot, tuy nhien chua cd van de sap
cd the.

-Cac trd choi la d tren may tinh cho nen tic dp xu ly nhanh, nhung doi vdi dien
thoai di dpng thi khong cd dupe nhu vay.
-Cung cap klia nang choi cd 2 ngudi thong qua cao thiet bi ket noi nhu wireless va
Bluetooth doi vdi dien thoai chua dupe chii y.
2.5.

Cong cu thuc Men

Giai doan
Dac ta

Phan tich

Thiet ke

Thuc thi

Cong cu


Nhasanxuat/Tuphat trien

Phien ban

Microsoft Word

Microsoft

2007

PowerDesigner

Sybase

15.2

Microsoft Word

. Microsoft

2007

PowerDesigner

Sybase

15.2

Microsoft Word


Microsoft

2007

Eclipse

Eclipse

Juno

Android SDK

Google

21.0.0

ADT Plugin (dung
cho Eclipse)

Google

21.0.0

JDK

Oracle

7

Bang \.5: Bang cong cu thuc Men

Tim hieu he dieu hanh Android va xay dung ling dung cd vua tren Android


1.6.Pham vi he thong
He thong du^e phan dinh ra 2 giai doan cu the nhti sau:
-Giai doan 1: tint hieu he diSu hanh Android, xay dung cac chiic nang co ban
cho tro chefi dap ling nhu cau giai tri ca ban cua nguoi dung.
-Giai doan 2: phat trien ling dpng sau hem, ho trg cac tinh nang cao cap nhu ap
dung cac gi^i thuat cho viec choi game hay hem, ho tro Wireless, Bluetooth, h6
trpdangonngu,...

1.7.Giaiphap cho he thong
Giai phap dupe chon de phat trien he thong la set dung ngon ngu lap trinh Java,
Android SDK, ho tra dupe da so cac dong dien thoai Android pho bien hien nay.
Ngoai ra nham dap ling vS muc dp choi t6t cho may nen dS nghi va ap dung them
mpt s6 giai thu^t nhu cit tia Alpha-Beta va MiniMax cho may phuc vp cupc choi
dupe tot hem. Ben canh do dl dap ling nhu ciu da dang ciia nguoi choi nen cong
ngh? khong day Bluetooth dupe xem xet va ap dung trong he thong.

Tim hieu he dieu hanh Android va xay dung ling dung co vua tren Android


Khda luan tot nghidp

Chutmg 2. CO SCJ LY THUYET
2.1. Khdi qudt v'e he dieu hdnh Android
2.1.1.So- lupc ve lich sir phat trien

Trong vai nam tro lai day, co the ndi Android la mot trong nhung he dieu hanh gay
tidng vang Ion cung nhu co sir phat trien nhanh nhat trong lang cong nghd noi chung

va mang thidt bi di dong noi ridng. Nam 2003, mpt cong ty hoat dong trong linh vuc
phat trien phan mem cho cac thidt bi di dpng mang ten la Android dupe thanh lap bdi
bdn thanh vien la : Andy Rubin, Rich Miner, Nick Sears, Chris White. Nam 2005, sau
hem hai nam hoat dpng thi dupe Google mua lai va tro thanh cong ty con ciia ga khdng
lo tim kidm. Tai Google, mot nhdm nghidn cuu dung dau la Rubip da bat dau phat
trien mot nen tang danh cho thidt bi di dpng dua trdn nhan cua he dieu hanh Linux. Va
sau do, he dieu hanh nay cung dupe gidi thidu den cac nha j^hat trien phan ciing Ian
phan mem. Tharig 5 nam 2007, li^n minh cac nha san xuat thiet bi cam tay dupe thanh
lap bao gom Google va mpt so thanh vien khac cua cpng dong Linux md. Muc tieu cua
lien minh nay nham phat trien tieu chuan md cho cac thiet bi di dpng va san pham dau
tien cua lien minh nay do la Android, mpt nen tang di dpng dupe xay dung tren nhan
Linux phien ban 2.6.
2.1.2.Mpt so tinh nang co ban

-Kha nang thich ling cua nen tang (Handset Layout) : vi du nhu kich cd man hinh tir
Ion den nhd hay hd tro ca do hpa 2D va 3D dua tren cac chi ti^t ki thuat trong thu vien
dd hpa OpenGL ES 2.0.
-Ket noi : Android hd tro hau het cac cong nghe ket ndi hien dai bao gdm
GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, (khdng kdt ndi thong
qua may chii Proxy va khdng cd mang khdng day Ad hoc), LTE, Wimax, NFC.
-Tin nhan : bao gdm ca tin nhan van ban (SMS) va tin nhan da phuOng tidn (MMS).
Ngoai ra dich vu Android Cloud To Device Messaging Framework (C2DM - dich vu
cho phep cac nha phat trien giii du lieu tir may chu den cac ling dung ciia ho tren thiet
bi Android) cung tich hop mpt phan mem vao trinh. nhan tin tren Android.
-Ngdn ngu : hd tro nhieu ngdn ngfl va so lupng ngdn ngu tren the gidi ngay cang
dupe hd trp nhieu hon. Mot so ngdn ngu sir dung ki tu dac thu nhu tidng Hoa, tidng
Thai cung dupe ho tro.
-Trinh duyet web : cd san trong Android dupe phat trien dua tren cong cu ma ngudn
md WebKit cung vdi JavaScript V8 ciia Chrome.
-Hd trp Java : cac lap Java dupe bien dich vaq cac tap tin thuc thi Dalvik va chay tren

may ao Dalvik. Dalvik la mpt may ao thiet ke dac biet cho Android nhlm tdi uu hda
cho cac thiet bi chay bang pin dien thoai di dpng vdi kha nang han chd bp nhd tren
CPU. Ngoai ra, Android con ho trp J2ME thong qua cac ling dung ciia ben thu ba.
-Phuong tien truyen thong giai tri: hd trp hau het cac dinh dang am thanh, video, hinh
anh phd bidn. Vi du nhu : WebM, H.263, H.264, MPEG-4, MP3, MIDI, FLAC, JPEG,
PNG, GIF, BMP,...

-Phan cung : camera, man hinh cam ling, GPS, gia tdc, con qua); hdi chuyen, tir kd,
dieu khidn choi game chuyen dpng, cam bidn ap suat, nhidt kd va dd hpa 2D va 3D.
Tim hieu he dieu hanh Android va xay dung ling dung cd vua tren Android5


Khda Man tot nghiep
-Cam ling da diem : tinh nang nay ban dau bi vo hieu hoa nhtmg sau khi HTC phan
nan thi Google da phat hanh phien ban cap nhat cho phep cam ling da diem.
-Bluetooth : ho trp gtti cac tap tin, tray cap vao danh ba dien thoai, quay so bang
gipng noi va giii dia chi lien lac giiia cac dien thoai,...
-Ba nhiem : Android co kha nang chay song song cung Me hhieu ling dung tren thiet
bi.

-Cac tinh nang thoai : cac tinh nang dung gipng noi de gpi dien, rihan tin, dinh
hudng,... dupe cung cap tir phien ban Android 2.2 trd di.
-Tethering : day la tinh nang cho phep sii dpng dien thoai nhu mot diem tray cap
khong day hay co day. Trade khi Android 2.2 ra mlt thi tinh nang nay dupe ho trp
thong qua cac ling dung ciia ben thii ba hay cac tuy chinh tir nha san xuat.
2.1.3. LTng dung
Tat ca cac ling dung danh cho cac thiet bi Android ^upe cung cap thong qua chp ling
dung Android Market. Bay la ling dpng ban phan mem trpc tuyen do Google phat trien
dupe cai dat san tren hau het cac thi^t bi Android, cho phep ngudi dung mua va tai ve
nhung ling dung, do ben thu ba phat trien. Ben canh do co mot phien ban nen web ciing

dupe phat hanh giiip ngudi dung co the mua ting dung.
Mot dien thoai Android se di kem vdi mot vai ling dung dupe cai dat sin, bao gdm :
-Mpt chuong trinh kiem tra E-mail tuong thich vdi Gmail
-Chuong trinh quan ly tin nhan SMS
-Phien ban thu gpn ciia Google Map danh cho dien thoai, dung de tim kiem dia
diem, timdudng...

-Trinh duyet web sii dung WebKit
-Chuong trinh tan gau (chat)
-Trinh da phuong tien (choi nhac, xem anh)
-Android Market: cho phep ngudi dung tai va cai dat cac ling dung tir Android
Market.

-Chuong trinh quan ly thong tin ca nhan, bao gdm lich lam viec va dupe ddng
bo vdi phien ban tren web cua Google.
Tat ca ling dung cd san nay deu dupe viet bang ngon ngu Java sii dung Android SDK.
Mdi phien ban Android mdi ra ddi deu cd nhung cai tien cho nhung ung dung tren va
b6 sung them nhung ling dung tifn ich khac nhlm hoan thien hon ndn tang Android.
tTng dung ciia mot ngudi nao do tao ra cd the hoan toan tray xult thong tin va du lieu
tir nhung ling dung cd san nay ndu dupe cai dat' quyln han ban dlu.
2.2. Nen tang va Men true cua he di'e u hanh Android
2.2.1. Phan ciing

Android khong phai la mot phan ciia phan ciing, ma no la mot nen tang phan mem
hoan chinh, cd the dupe dieu chinh de lam viec tren bat ki cau hinh phan ciing nao.

Tim hieu he dieu hanh Android va xay dung ling dung cd vua tren Android6


Khda luan tot nghiep

Mpi thii dlu tin tai trong Android tvr Bootloader cho din ung dung. Co mot s6 rang
bupc ve phin cung dli vdi thiet bi co thl chay dupe he dieu hanh Android nhu sau :
Phan cfmg

Nhung yeu cau toi thiiu

Chipset

ARM-based

RAM

128 MB RAM, 256MB Flash External

0 ciing

Mini hoac Micro SD

Man hinh chinh

QVGA TFT LCD hoac ldm horn, 16-bit color hoac tot hom

Navigation Key

2MP CMOS

USB

Standard mini-B USD interface


Bluetooth

1.2 hoac 2.0

Bang 2.2.1: Nhungyeu cau cho phan cung cua thiet bi Android
2.2.2. Kiln true nen tang Android
Co 5 ting phan biet trong mot he thing Android (hinh 2.2.2)

-Tang loi ARM Linux : la ting thip nhit dupe xay dung tu hai thanh phin chinh la
Linux Kernel va bp vi;xu ly ARM (Acorn RISC Machine). Bl vi xit ly ARM hoat
dpng vdi hieu suat cao nhung tieu thu nang lupng rat it. Con Linux kernel phien ban
2.6 dupe chiing minh la phien ban co tinh In dinh cao. Su kit hop ciia hai thanh phin
nay, nham giai quyet phan nao gidi han vl nguln nang lupng su dpng va tli uu viec sii
dung cac tai nguyen trong thiet bi.
-Tang thu vien : chiia ma nguon cap thap cho nhiing chiic nang co ban nhu : ma hda
va giai ma am thanh, hinh ^nh ki thudt si, trinh bay cac giao dien, dl hpa, bao mat luu
lupng TCP/IP cung nhu cac thanh phin cho trinh duyet web, ho trp truy xuit ca sd du
lieu (SQLite), v.v...

-Tang may ao Android : day la mot phan mem dimg de chay cac ling dung tren thiet bi
Android, bao gom mot tap cac thu vien loi (core libraries) cung cap hau het cac chiic
nang trong thu vien loi ciia ngon ngu lap trinh Java va may ao Dalvik. Moi ung dung
Android se chay trong mot tien trinh rieng danh cho no, vdi mot may ao Dalvik rieng
cung dupe thiet lap danh rieng cho moi ling dung. Dalvik dupe viet de mot thiet bi co
the chay nhieu may ao cimg luc hieu qua. May ao Dalvik thuc thi cac tap tin .dex, la
loai tap tin dupe toi uu de tiet kiem bp nhd, va de quan ly tien trinh, quan ly bo nhd
hieu qua, may ao nay cung sii dung cac chiic nang do Linux kernel cung cap.

-Tang khung ling dung Android : ten tieng Anh la Android Application Framework.
Tang nay dinh nghia Android API, cung clp bp cong cu d miic cao dl cac lap trinh

vien Java nhanh chdng xay dung ling dung.
-Tang ling dung loi Android : bao gom nhiing ling dung ca ban ho trp them cho ngudi
lap trinh nhu : WebKit browser, Google Calendar, Gmail, Maps Application, SMS
Messenger, va e-mail client, v.v... L^p trinh vien co the viet ung dung Android rieng d
tang nay.

Tim hieu he dieu hanh Android va xay dung ling dung cd vua tren Android7


Khoa luan t6t nghiep

APPLICATIONS
Home

Controls

Phone

Browser

APPLICATION FRAMEWORK
Activity Manager

Windows Manager

| Telephony Manager

Content Providers

Resource Manager |


Location Manager |

LIBRARIES
Surface Manager

SGL

|

Package Manager

Notification Manager

ANDROID RUNTIME

| Media Framework

OpenGL|ES

View System

SQLite

|

Core Libraries

Free Type


WebKit

|

Dalvik Virtual Machine |

SSL

llbc
i

|

:,

. LINUX KERNEL
Display Driver

| Flash Memory Driver

Camera Driver

Keypad Driver

Wifi Driver

Audio Drivers

Binder (IPC) Driver
^ower Managament


Hinh 2.2.2 : Cac tang cua hi dieu hdnh Android
2.2.2.1. Linux Kernel 2.6

Android duac jcay dung tren n6n tang Linux kernel 2.6 ma nguon ma, chiia nhiing
trinh dieu khien (drivers) dung dd dieu khien phin ciing nhu Keypad, Wifi, Camera,
Audio, man hinh.v.v... (Hinh 2.2.2.1). Day duac xem la trung tam chi huy cua nen

tang Android. Cac giai thuat quan ly tai nguyen, chuyen doi qua lai giua cac tac vu,
phan chia quyen, giai quyet tjranh chap duqc cai dat trong kernel duqc xem nhu
"phong cong tac doi ngoai" vi no dam nhan viec tuang tac vai thiSt bi ngoai vi. Tuy
nhien, nguai su dung se khong bao gid lap trinh true ti^p tren tang nay.
Li do de nhom phat trien Android l\ra chon Linux kernel 2.6 la vi nhung tinh nang noi
bat cua no :
-Mo hinh bao mat tot.

-Quan ly bo nhd toi uu.
-Quan ly tien trinh hieu qua.
-Quan ly cac kenh ket n6i mang tot.
TJNUXKERNET,
Camera Driver

Display Driver
Keypad Driver

Wifi Driver

|

Flash Memory Driver

Audio Drivers

Binder (IPC) Driver
Power Managament

Hinh 2.2.2.1 : Tang Linux Kernel 2.6 trong Android-

Tim, hieu he dieu hanh Android va xay dung ling dung ca vua tren Android


Khoa luan t6t nghiep

2.2.2.2. Android Framework

Dupe phat triSn tren nSn cua Linux Kernel, ting nay du^e cau thanh tut hai ting con,
cung cap nhung tinh nang dupe minh hpa nhu hlnh 2.2.2.2:
-Android native libraries : day la tap thu vien C/C++, va ngrrai lap trinh se gpi thu
vien nay thong qua giao dien Java (trong tang tren Application Framework). Phan nay
' gom thu vien Surface Manager (tao cac cua so giao dien), OpenGL (ho trp ung dung
xay dung d6 hpa 2D va 3D), Media Framework (ho trp cic ung dung xay dung vi am
thanh, hinh anh), SSL (cung cap chuc nahg bao mat thiet bi), SQLite (co so du lifu
quan he ma nguon mb dupe nhung trong thiet bi), WebKit (ho trp hien thi npi dung
website), v.v...

-Android Runtime : g6m cac thu vien loi cua Java va may ao Dalvik. Cac ung dung
Android dupe viit bing ngon ngu Java, nen khi bien dich se dupe cac file *.class. May
ao Dalvik se lam tiep mot cong viec la dong goi cac file *.class nay thanh mot tap tin
nho gpn *.dex co the dung de chay tren thiet bi, giiip toi uu viec su dung bp nhd va
nguon nang lupng gidi han.


ANDROID RUNTIME'

LIBRARIES
Surface Manager

Media Framework

SQLite

Core Libraries

OpenGLpS

Free Type

WebKit

Dalvik Virtual Machine

SGL

SSL

llbc

Hinh 2.2.2.2 : Tang Android Framework.
2.2.2.3. Application Framework

Tang nay chua cac thu vien Java h6 trp ngubi dung giao tiep vdi ting Android
framework (hinh 2.2.2.3). Mot phan cua ting nay do Google cung cip sin cho ban,

mot phan la do ban tao ra. Trong tang nay thi thanh phan quan trong nhit la Activity
Manager vi no quan ly chu ky song cua Activity.
-Activity Manager : quan ly chu Id song ciia Activity trong ung dung Android.
-Telephony Manager : cung cap thu vien cte truy xuat dSn cac dich vu dien thoai cung
nhu la thong tin thue bao.
• - View System : xu ly giao dien trong ling dung Android ciia ban.
-Location Manager : cung cap thu vien ho trp nguoi dimg dinh vi vi tri ciia thiet bi.

APPLICATION. FRAMEWORK
Activity ManagerWindows ManagerContent ProvidersView SystemPackage Manager

Telephony ManagerResource Manager

Location Manager

Notification Manager

Hinh 2.2.2.3 ; Tdng Application Framework

Tim hieu he dieu hanh Android va xay dung ung dung cb vua tren Android


Khda luan tot nghiep
2.2.2.4. Applications

Day la ting cao nhit va ting dpng ciia ban s'e nim trong ting nay (hinh 2.2.2.4). Tuy
nhien, de tien' lpi cho viec txuy xuay mpt sd thong tin d cac ting dudi, Google da viet
sin mot so thu vien tien ieh trong ting nay giiip ban truy xuat thong tin d nhung phan
ben dudi linh hoat va hieu qua nhat.


APPLICATIONS
Home

Phone

Hinh 2.2.2.4 : Ting ung dung
2.2.3. Kien true ung dung

Nhu da de cap, Android chay ben tren mot he dieu hanh nhan Linux. Cac ling dung
Android dupe viet bang ngon ngu lap trinh Java, va chiing chay trong mpt may ao
(VM). Dieu quan trong la phai luu y ring VM khong phai la mpt may ao Java (nhu
ban chd dpi), ma la may ao Dalvik (Dalvik Virtual Machine), mpt cdng ng^e ma
nguon md. Moi ling dung Android chay trong mot ca the ciia may ao Dalvik, den lupt
minh ca the may ao nay nam trong mot tien trinh do nhan Linux quan ly, nhu trinh bay
dudi day.
Linux Kernel
Linux Process

Dalvik Virtual Machine
Android Application

Hinh 2.2.3 : Kiiri true ung dung
2.3. Khdi qudt vi Cot vua vd luqt Cot vua
2.3.1. Gidi thieu Cd vua
Muc dich ciia van cd: Van cd dupe tien hanh giua hai ngudi, mot ngudi cam quan
Trang, mot ngudi elm quan Den. M\ic dich ciia moi ngudi la tim moi each di quan
tren ban cd theo diing luat de chieu bi hay b^t Vua ciia doi phuong va gianh thang
lpi. Cac van cd khong phai bao gid cung ket thiic blng phi^u bi. Cd thl mpt ben xin
thua, cd the thua do het gid hoac pham luat chcri. Cd thd xay ra cac van cd hda. Mpt
van cd vua la hda khi: do thda thuan ciia hai ben do khong ben nao dam mao hiem

hay khi khong dii lyre lupng d6 chidu h8t, roi vao trang thai hSt nude di, ca hai ben
lap lai nude di ba Ian.

Tim hieu he dieu hanh Android va xay drmg ling dung cd vua tren Android

10


Khda Man tot nghiep
Ban ca va quan cd:

+ Ban cor: gdm 8 hang (danh s6 tir 1 ddn 8) va 8 cpt (danh chu tu a den h), tao ra
64 6 hinh vudng vdi cac mau dam va nhat xen ke nhau, vd( moi ngudi chai se
co 6 mau nhat d hang cudi cung ben tay phai cua minh khi ngdi vao ban cd.
+ Moi van cd Me bat dau phai co dii 32 quan, chia deu cho moi ben gdm 16
quan Tiing va 16 quan Ben, gdm 6 loai quan. Sau loai quan co ky hieu va s6
lupng cho moi ben nhu sau :

Hinh 2.3.1: Cac quan co tren ban cd vua

2.3.2. Cac quan cd va Mat di1
2.3.2.1. Quan Vua

Ki hieu qudc te la K. La quan quan trong nhdt, neu mat Vua thi ngtrdi chai thua cupc.
Moi Ian di no co the an quan hoac di chuyen sang cac 6 bao quanh 6 ma no Men tai
dang chiem giQ, nhung khong the tdi 6 ma quan cua minh dang chiem giu hay cac 6 bi
quan cua doi phuang kieni soat. Ngoai le duy nhat la trudng hap nhqp thanh. Khi do
no co the di chuyen qua hai 6 dong thai vdi viec di chuyen quan Xe cua minh de quan
Xe dung ben canh no ve phia cot trung tam. Ki hieu nhap thanh la 0-0 va (0-0-0) nhap
thanh xa. Vua khong the khong bao ve khdi nude chieu, do do khi bi chieu thi ngudi

chai phai thuc hipn cac bien phap nh^m cuuVua (di chuyen Vua khdi vi tri bi chidu,
an quan dang chieu, hay dung quan khac^ ciia minh can trd dudng chieu neu cd the).
Neu khong the cd nude di de cuu Vua thi ngudi chai bi chieu bi va thua cupc.
Ndi them ve nhap thanh : nhap thanh la mot nude di dac biet trong trd chai cd vua va
mot trong hai quan xe tham gia vao viec di chuyen. Khi nhap thanh Vua qua 2 d ve
pMa quan xe tham gia nhap thanh, va sau do di chuyen quan xe tdi d ma quan vua vua
di chuyen qua sao cho no nam ngay ben canh quan vua. Viec nhap thanh chi dupe cho
phep neu tat ca cac dieu kien sau dupe dam bao : quan vua va quan xe tham gia nhap
thanh chua bao gid di chuyen, khong cd quan nao giua vua va xe do, vua khong bi
chieu, vua va xe tham gia nhap thanh phai nam tren mot hang ngang.
Be thpc Men nh^p thanh ngudi chai c^n cfim quan vua trudc, di chuyen ddn 6 cung
mau gan nhat, rdi sau do di chuyen xe qua dat ben canh vua. Ndu nhap thanh g^n Mi
xe von d ben phai vua, se chuyen tdi 6 ben trai canh vua; neu nhap thanh xa thi xe vdn
d ben trai vua, se chuyen tdi 6 ben phai canh vua.

Tim hieu he dieu hanh Android va xay dung ling dung cd vua tren Android

11


Khda luan tdt nghiep

2.3.2.2.Quan Xe

Ki hieu quoc ii R di chuyln theo cac dudng thing doc theo cot hay hang tdi 6 con
trdng ma khong co quan nao can tren dudng di hay tod 6 bi quan doi phuong chiem gift
(an quan) nhung khong the vugt xa quan dang diing & do. Ngoai lp duy nhat la trudng
hop nhap thanh. Khi do no co thi nhay qua quan Vua ciia minh dl dung canh no. Chi
co Xe mod co nude di nhu the.
2.3.2.3.Quan Tupng


Kihieu quoc te B di chuy^n theo dudng cheo tdi 6 co cftng mau vdi nguyen ly tuong
tu nhu Xe tdi 6 con trong hay 6 bi quan doi phuong chiem giu (an quan).
2.3.2.4.Quan Ma

Ki hieu quocte N co the di chuyen tdi 6 con trong hay 6 bi quan doi phuong chiem gift
(an quan) theo dang hinh chft L. Quan Ma khong bi'can nhu trong cd tudng.
2.3.2.5.Quan Tot

Khong can ki hi^u, cd the di chuyen thang ve phia trudc chi mot 6 mot Ian tdi 6 con
trong (di ma khong an quan), nhung khi di chuyen d an quan doi phuong thi di cheo.
Vi du Tot trang tai 6 C4 cd quyen an quan doi phuong tai 6 B5 hoac D5 neu mot trong
hai 6 nay cd quan doi phuong chiem hoac di chuyen xuong 6 C5 neu 6 nay con trong,
tru hai truong hop sau :
1.No cd the di chuyen mot hoac hai 6 n8u no di tu vi tri xult phat ban dlu tdi 6
chua bi chiem gift, nhung khong the nhay qua mot quan khac d tdi 6 do.
2.Trong truong hop mot quan Tot nao do cua hen trang dat tdi hang 5 (vi du tdi
6 e5 va quan Tot thuoc mot trong hai cot cua ben den nlm ben canh ngay cpt ma T6t
tr^ng dang chiem gift (trong truong hop da cho la cot d ya cot f) di tu vi tri xult phat

dlu tien (d7 hay f7) nhay liln hai 6 tdi 6 d5/f5 thi T6t trlng tai vi tri e5 ngay tai nude
di sau do cd quyen an Tot den tai 6 d5/f5 va ^i chuyen tdi 6 d6/f6. Quyen nay se tu
dpng mat, neu tai nude di ngay sau do quan trlng di chuyln quan khac. Tuong tu nhu
vay cho Tot den khi no da chilm gift hang 4. Bay la truong hop ma trong cd vua ngudi
ta gpi la bit T6t qua dudng.
2.3.2.6.Quan Hsm

Ki hieu quoc te Q cd nude di la to hpp don gidn cua chuyln dpng cua Xe va Tuong.
Trong mot nude di no cd thi di chuyen theo dudng cheo hoac. dudng thing doc theo
cot hay hang, vdi nguyen ly di va an quan nhu Tuong va Xe.


2.4.

Klidi niem C& thi

Cd the la hinh thuc cd ma ban cd luc ban dau da cd sin cac the cd, quan cd dang d cac
vi tri nhu trong mot van cd dang dd, muc dp the cd tu dl den khd va ngudi chai phai
thang dupe sau mot so nude di dupe yeu cau tu trudc. Cd the hay dupe thly d cac le
hoi dan gian.

Tim hieu he dieu hanh Android va xay dung ung dung cd vua tren Android12


Khda luan tot nghiep
2.5. So lope ve cdc bo cong cu phdt trien ling dung - SDK (Software

Development Kit) vd cdc moi tnrdng phdt trien tich hop - IDE (Intergated
Development Environment) cho Android
2.5.1. Android SDK
SDK la chu viet tat ciia Software Development Kit, la bp cong cu phat trien phan
mem, ma cu the la phat trien ling dung cho he dieu hanh Android. San pham nay do
chinh Google xay dung va phat hanh mien phi cho tat ca nhung ngubi muon tim hieu
va viet cac ling dpng tren nen tang nay.

Android SDK yeu cau phan ciing cho cac thanh phan ma ban chpn cai dat. Chi tiet mo
ta trong bang sau

Loai thanh phan

Kich thufrc


Ghi chu

SDK Tools

35MB

Bat bupc

SDK Platform-tools

6MB

Batbupc

Android platform

150MB/1 phien bn

It nhat ph^i cai dat mpt
phien ban Android

(ching han Android
2.1)
SDK Add-on

lOMB/phien ban

Tuy chon


10MB

Tuy chpn, chi sir dung
cho Windows

Samples

lOMB/phienban

Tuy chpn

Tai lieu Offline

250MB

Tuy chpn

USB Driver
Windows

cho

Bang 2.5.1: Yeu cduphdn cungcho cdc thdnhphdn cita Android SDK
-SDK Tools : chiia cac cong cu dung de phat trien, kiem tra va go 16i ling dung ciia
ban nhu : Android SDK va AVD Manager (android), trinh gia lap thiet bi (Emulator),
may chii dieu khien may ao Dalvik (DDMS), v.v...
-SDK Platform-tools : chiia cac cong cu dung de phat trien va go 16i ling dung, nhung
dupe cai dat theo timg phien ban khac nhau cua he di^u hanh Android de ho trp nhOng
tinh nang mdi nhat nhu : cong cu kiem tra trang thai ciia trinh gia lap (adb), aidl, aapt,
va dx. Nhung cong cu nay se dupe cap nhat khi mot nen tang Android mdi dupe cai

da^
-Android Platform : dupe hieu la mot nen tang Android; Moi phien ban Android
Platform se cd mot phien ban SDK Platform tuong ling di kem va dupe cai dat tren
thiet bi. Platform nay chiia cac thu vien Android, ma nguon mau va nhieu cong cu can
thi^^t khac.
-USB Driver cho Windows : chiia cac tap tin ma b^n co th^ cai dat len may tinh
Windows lam cau noi giua chuong trinh Android ciia ban tren may tinh vdi thiSt bi
Android thuc te. Khi cai dat thanh phin nay xong, ngubi dung cd thS chay va ki^m tra
thuc te ling dung tren thi^t bi.

Tim MSu he dieu hanh Android va xay dung ling dung cb vua tren Android

13


Khda lugn tot nghiep
Android SDK sit dung JDK. Do do nlu may tinh chua cai JDK thi chua thi cai dugc
Android SDK. Co the tai JDK tai dia chi trang web
/>2.5.2. Eclipse va ADT Plugin

sau

:

2.5.2.1.Eclipse

Eclipse la mot mdi trudng phat trien tich hop cho Java, dugc phat trien ban dau bdi
IBM va hien nay bdi to chiic Eclipse. Hien nay Eclipse khdng chi ho tro cho ngdn ngu
Java ma no con ho trg cho cac ngon rigu nhu JavaScript, PHP, C, C++, Cobol, Pythol,
C#, HTML, XML neu ngudi dung sir dung met rong cac trinh bo sung.

Khi phat trien ling dung cho Android, Google khuyen khich ban sir dung Eclipse bdi vi
day la moi trudng dugc Google xay dung cac tinh nang tich hop kha hoan chinh. Ben
trong ling dung, ngudi lap tririh cd thi sii dung cac thu vien co sin ciia Java va cac thu
vien trong Android SDK de thiet kg cac chiic nang cho ling dung Android ciia minh.
Tuy nhien, khong phai tat ca thu vien Java dlu co the dung khi lap trinh Android, ma
chi nhung thu vien phuc vu cho lap trinh dien thoai mdi tich hop.
2.5.2.2.ADT Pluin

ADT la chu viet tat ciia Android Development Tools. Day la mot thanh phan met rong
ciia Eclipse, chiia nhung thanh phan trong Android SDK va dugc them vao Eclipse de
tao mot moi trudng tich hop xay dung ling dung Android. ADT md rong cac tinh nang
ciia Eclipse gdm nhung thanh phan sau :
-aapt :. Android Asset Packaing Tool : nhiem vu ciia cong cu nay la tao cac tap tin
*.apk, la mgt dang file nen chiia chuomg trinh va tat ca cac tai nguyen ciia ling dung.
Tap tin nay se dugc cai dat tren trinh gia lap hay thiet bi Android.
-adb : Android Debug Bridge nhiem vu ciia cong cu nay la tao mgt cau noi de chuyen
va cai dat ma nguon ciia ling dung len trinh gia lap (Emulator) hoac thiet bi Android
(Android device). Thong qua adb, nguoi dung co th^ diSu khidn ca thiSt bi.
-dx : Dalvik Cross-Assembler: cong cu nay dung de chuyen cac lap Java chuan trong
ung dung thanh mot tap tin nhi phan (*.dex) chay tren may ao Dalvik.
-ddms : Dalvik Debug Monitor Service : cong cu nay cung cap nhung dich vu nhu :
chup man hinh thiet bi, quan ly thong tin tien trinh va ngan xep, logcat, v.v...

2.6. Giai thuat Minimax va giai thuat cai tien Alpha-beta!61
2.6.1. Gioi thieu
Thuat to an Minimax la thuat toan tim kiem chuyen dimg de tra ve chuoi nude di toi uu
cho mot ngudi chai trong trd chai co tdng blng khong. Minimax (con gpi la minmax)
la mot phuong phap trong ly thuyet quy^t dinh co muc dich la tdi thilu hoa (minimize)
ton that von dugc du tinh co the la toi da (maximize). Co thl hilu ngugc lai la, no
nham toi da hoa Igi ich v6n dugc du tinh la t6i thilu (maximin). Thuat toan nay cung

dugc md rong cho nhieu trd chai phuc tap han va giiip dua ra cac quyet dinh chung
khi co sg hifn dien ciia su khong chac chan.
Mot phien ban cua giai thuat dp dung cho pac trd chai nhu tic-tac-toe, khi ma mdi
ngudi chai co the thang, thua, hoac hda. Neu ngudi chai A co thl thing trong mgt
nude di, thi "nude di tot nhat" chinh la nude di de dan den ket qua thing do. Neu
ngudi B biet rang co mot nude di ma dan den tinh hudng ngudi A co the thang ngay d
nude di tiep theo, trong khi nude di khac thi se dan den tinh hudng ma ngudi chai A
chi co the tot nhat la hda thi nude di tot nhat cua ngudi B chiph la nude di sau.
Tim hieu he dieu hanh Android va xay dung ling dung cd vua tren Android14


Khda luan tdt nghiep
Ta se nam ro, the nao la mdt nude di "tdt nhat". Giai thuat Minimax giiip tim ra nude
di tdt nhat, bing each di ngupc tir cudi trd chai trd ve diu. Tai moi budc, no se udc
dinh ring ngudi A dang cd ging tdi da hoa ca hdi thing cua A khi den phien anh ta,
con d nude di ke tiep thi ngudi chai B cd ging de tdi thieu hoa ca hdi thang ciia ngudi
A(nghialat6idahdacahpithIngciiaB).'
''
Ly thuyet trd chai coi trd chai la sir ket hop hoac trao ddi giua hai hay nhieu ddi thu d
do moi ddi thu cd ging lira chpn tdi uu hanh ddng (hay nude di) cua minh nhlm dat
dupe lpi ich tdi da. Trong ly thuyet trd chai cd mdt each phan loai cac trd chai thanh
hai loai: trd chai cd tdng bing khdng va trd chai cd tdng khac khdng.
Trong nhung trd chai cd tdng khac khdng, lpi ich thu dupe cua ngudi chai nay khdng
nhat thiet dan tdi su mat mat cua ngudi chai Ma. Cac tinh hudng nay ton tai vdi dieu
Men tdng ket qua (ma ngudi thang dupe hudng) khdng bi gidi han hay cd dinh. Ve ban
chat day la trudng hpp Men tao ket qua thay vi chia se ket qua giua cac ddi thu. Chang
han nhu khi nghe hoa nhac, ngudi ta khdng phai thich mpt ban hoa tau vi ngudi khac
khdng thich nghe. Viec ai do khdng thich nghe chang cd anh hudng gi tdi sd thich ciia
ban trong dieu Men b^n khdng phai nghe Idi binh luan ciia ngudi do.
2.6.2.Trd choi cd tong bing khdng

Trd chai cd tdng blng^ khdng la trd chai cd tdng gia tri ket qua (ma ngudi thing dupe
hudng) la cd dinh. Bat cii ben nao thing (+l).cung lam cho ben kia thua cudc (-1),
tuang ling vdi tinh hudng ganh dua thuln tuy, cudi cung din tdi tdng (+1- 1) = 0.
Cd vua la mpt trd phai cd tdng bang khdng bdi khdng the cd trudng hop ca hai ben deu
thang hoac deu thua. Neu mdt ben thang thi ben Ma nhat dinh la thua va ngupc lai. The
thao la nhung vi du dien hinh nhlt ciia trd chai cd tdng bing khdng. Nha vd dich chi
cd the dat dupe vinh quang khi toan bd cac ddi thii khac deu thua cudc. Trong mdt giai
bong da tdng sd tran thang ludn bang tdng sd tran thua cung la bdi cai tinh chat tdng
bang khdng ay.
Vipc dau tu Mnh doahh chiing khoan cung chinh la mdt trd chai cd tdng bang khdng,
bdi vi d do, ^o tidn thua Id cua nha diu tu nay se la tidn lai ciia nha diu tu khac. Nha
dau tu cd the mat trang hoac thang ldn, lpi nhuan ma anh ta thu dupe cd thd ddi bing
ca gia tai, ddi khi mang song ciia nhung nha dau tu tai chinh khac.
2.6.3.Binh ly Minimax

Binh ly:
Vdi trd phai cd tdng bang khdng. va cd hai ngudi chai, mdt trong 3 dieu Men sau day
se dan ddn.2 didu Men con lai.
1. Ton tai mdt cap can bang.
o v, =max riiiniw (p,cr) = min max M(p,g) = v2
P9IP

3. Ton tai mpt sd thuc v, mpt chien lupc hdn hop p* va mdt chidn lupc hdn hop q*
sao cho:

(a)^, M(ai'bj)P^v vdij=l,2,...,n
(b)',j^(.ai'bj')q,-v vdii= l,2,...,m

Tim hieu he dieu hanh Android va xay dung ling dung cd vua tren Android15



Khda luan tit nghiep
Bieu kien (3a) noi rang ton that trung binh cho ngudi choi 2 dung chien lucre thuan tuy
b^t ky ndo khong nhd hem y. Tuong tu dieu kip n (3h) noi ton that trung binh ciia ngudi.
choi 1 dung chien thuat thuan tuy bat ky thi khdng Ion horn v.
Trong dinh ly Minimax, Von Neumann (1928) chiing minh sir tdn tai tong quat cua
ede nghiem Minimax trong cac chien luqc ngau nhien hoa cho cac trd choi huu han
budc, hai ngudi choi va tong bang khong. Vdi cac trd choi nay, dinh ly Minimax
tudng duong vl mat 16-gic vdi su ton tai cua cdn blng Nash.
Dinh ly Minimax con dirpc phat bieu nhir sau :
Vdi mpi trd choi co ting bdng khong vdi hai ngudi choi thi luon tin tai mot chien luqc
can bang.•

Tu dac diem ciia trd choi co tong bang khong vdi hai ngudi choi (Zero-sum-game) va
tu dinh ly Minimax nen thuat todn Minimax thich hop vdi loai trd choi nay. Va dam
bad khi thuat toan ting dung cho cac trd choi nay se chac chan co ldi gidi.
2.6.4. Giai thuat Minimax
Xet mpt trd choi' doi khang trong do hai ngudi thay phiSn nhau di nude cua minh nhu
cd vua, co tudng, co card,... Trd choi co mot trang thai bat dau va moi nude di se bien

doi trang thai hien hdnh thanh mot trang thai mod. Trd choi se ket thuc theo mot quy
dinh nao do, theo do thi cupc choi se ddn den mot trang thai phdn anh co mot ngudi
thing cupc hoac. mot trang thai ma cd hai dau thu khong the phat tridn dupe nude di
cua minh, ta gpi no Id trang thai hda cd. Ta tim each phan tich xem tu mot trang thai
nao do se dan den dau thu nao se thing vdi dieu kien cd hai dau thu deu cd trinh dp
nhu nhau.

2.6.4.1. Y tirdng
Haiyddi thu tro^g mot trd choi dupe gpi la MIN va MAX. MAX dai dien cho ddi thu


quyet gianh thing }pi hay cd ging tdi da hda uu th^ cua minh. Ngupc lai MIN la ddi
thu cd ging tdi thieu hda diem sd cua MAX. Ta gid thiet MIN cung dung cung nhung
thong tin nhu MAX.
Mpt trd choi nhu vay cd the dupe bieu dien bdi mot cay trd choi. Mdi mot nut cua cay
bieu diin cho mot trang thai. Nut gdc bieu diln cho trang thai bit ddu cua cupc choi.
Moi nut la bieu diln cho mot trang thai kit thuc cua trd choi (trang thai thing, thua
hoac hda). Neu trang thai x dupe bieu dien bdi nut n thi cac con ciia n bieu dien cho tat
cd cac trang thai ket qua ciia cac nude di cd the xuat phat tit trang thai x. Do hai dau
thu luan phien nhau di nude ciia minh nen cac muc (ldp) tren cay trd choi cung luan
phien nhau la MAX va MIN. Cay trd choi vi thi con cd ten la cay MIN-MAX. Tren
cay trd choi cac mit ling vdi trang thai ma tit do ngudi choi MAX chpn nude di se
thupc ldp MAX, cac mit ling vdi trang thai ma tit do ngudi choi MIN chpn nude di se
thupc ldp MIN. Chien lupc minimax thi hien qua quy tie dinh tri cho cac mit tren cay
trd choi nhu sau :
-Neu mit Id mit la gan cho mit do mpt gid tri de phan anh trang thai thang thua hay hda
cua cac dau thu.

-Sii dung gid tri ciia cac mit id dl xdc dinh gid tri ciia cac mit d cac muc tren trong cay
trd choi theo quy tac:
Tim hieu he dieu hanh Android va xay dung ling dung cd vua treri Android16


×