Tìm hiểu dịch vụ googlemap xây dựng ứng dụng chia sẻ vị trí với bạn bè trên nền tảng android - Pdf 31

CHVONG 1. Glen THISU BAI TORN
1.1. Vai net ve GoogleMap
Nhu citing ta da biet, bit chip suy thoai kinh te, nganh ding nghe thong tin van
dang phat trien v6i mot toe dg cheng m$t. Trong thbi gian gin day danh diu sy phat
trien rat manh cua cac thiet bj dien thoai thong mirth (Smartphone). MOt trong nhung
(mg dung quart tong nhAt va co the nal la "khan the thieu" d6 chinh la ang dung ban db.
Ban d6 GoogleMap duqc xay dung ben ceng ty Google bang the hinh anh vg tinh
va viec di tim hieu throng ph6 thuc te. C6 mot so than vien cfra Google duqc tra ltrang
cao voi c8ng viec dap xe dap c6 gin thiet bj cita Google de ghi lai va chyp anh dutmg
ph6. Cong viec nay ton rat nhieu thbi gian, nhung nha d6 ma ban d6 GoogleMap co dO
chinh xac rat cao va nhOt fit thutmg xuyen. ling dung Maps hay chinh la
GoogleMap gulp ngutri dung c6 the sir dung ban d6 nay trong viec tim duang di. 6
phart sau toi se gieri thieu ky han ve ung dung thy.
1.2. Nhftng gl GoogleMap khong ht) trq?
DOng hanh v6i su phat trien cfut ding nghe, new nay each con ngubi giao tiep
cling di kit di. ChAng ta khong chi chia se hinh anh, loi nei, van ban ma yeti thiet bj
di dOng thong mirth ta con c6 the chia se ca vi tri ciut mink. Cac thiet bj di dOng thong
mirth hau het deu tich hqp tinh nang GPS — gitip djnh vi Nei tri sir dung tin hieu vg tinh.
Ngoai cac eh& nang co ban ma GoogleMap da cung cap nhtr tim dtrimg, chi
dutmg, dieu huang... co mot chirc nang quan trong khac ma GoogleMap da dimg
trq da la firth nang chia se vi tri vUi ban be, ngutri than(Google Latitude). Chinh dieu
nay da thitc dAy ten xay dung mot (mg dung chia se vj tri ban be teen Google Map.
1.3. Tai sao lqi cAn ting dyng chia se vj tri?
Nhu ta da thAy, co se dft lieu de luu aft da lieu ban d6 ctia ca the giOi la rat 1611,
hay c6 the not la v8 cling lon. Chic chin khong the nao luu trtt tit ca cac dia diem, cac
nha hang, dja danh tren ban d6 duqc. Cho du Google co co ging lam dieu do thi dft
lieu se khong the cOp nhOt thu?mg xuyen, trir khi moi khu ph6 tren the giei deu co than
vien cita Google. Chinh vi v$y thing ta co the S thanh mot ngtrtri clang tot bung,

bang each giam di ganh n$ng rill* dja diem cho Google. Chang ta c6 the to cop
nhOt vi tri cilia minh. Tuy nhien, khong phiti bit tit ai, bit cir lac nao ta cling mutin chia

nhung da chi li img dtmg ben phut ngubi dung. De ling Mpg c6 the hoat ding can c6
mOt Server. Server nay c6 nhiem vµ luu thong tin tai khoin cua ngubi dimg, luu v1 tri
ngubi dimg vi thvc hien mOt so chirc niing khic.
Server nay can ducm via bang mOt non net ph6 bien vi khong phv thuOc vio
hg dieu birth, da chinh la nein ngft Java. Server khong an c6 giao dien 46 hoa, chi co
nhiem vv nh#rt yeu tau tir phia thiet bj kith, zir ly vi tri ve ket qui. Tuy nhien, da la
ding viec cim ngu&i 1#p trinh, ngubi sir clang img citing nay khong an quan tam server
lam gi ma chi can thao tic tren thiet bj dm mirth.

4


CHUONG 2. GIefITHIEU a DIEU HANH ANDROID
2.1. Android la gi?
Android la melt Hg dieu !Anti dinh cho cac thiet bj di dOng nhu dien thoai thong
minh hay may tinh bang. Android duqc xay dung Iron nen tang Linux va sir dung nem
ng0 Java.
Ban du, Android duqc phat trien boi TOng cong ty Android vii str ho trq tai
chinh cua Google. VI° Min 2005, Google di chinh that mua lai ding ty nay. Tuy
nhien vao theri diem da Android van chug duct ra met. Den aim 2007 Android mai ra
mit cling yeti tuyen b6 thanh lip Lien minh thiet bj elm tay ma: mOt hiep hOi g6m cac
ding ty phan mem, phAn ming va vien th8ng yeti mac tieu day math cac tieu chuan ma
cho cac thiet bi di dOng. Thief bj du tier chug Android duqc ban ra thing 10 mitn 2008.
Android la he dieu hanh c6 ma nguln ma va Google phat hanh ml nguln theo

gily phip Apache — mOt giay phep kW:Mg c6 nhieu rang butjc. Chinh dieu nay di glop
cho cac nha san xuet thiet bj, mpg di dOng va cat lelp trinh vien duqc dieu chinh va
phan phOi Android mOt cach tar do. Tinh den thed diem thing 10 niun 2012 — 4 Titan
sau khi thiet bj Android du tien duqc cong b6, di ce khoing 700.000 img dung tren
Android, va s6 luqt tai ting dung tree elm hang 'ring dung Google Play &cc tinh khoang

n6 thanh met be phan trvc thutic Google. Sau thucmg vv nay, nliimg nhan vien chit
chat dm Tang cong ty Android An tiep tic a lai cong ty lam viec. Vao thbi diem da
kitting c6 nhieu th8ng tin ve cong ty Android, nhtmg dA co nhang loci clan rang Goolge
dir tinh tham gia thi trutmg thiet bi di dung sau buem di nay. Tai Google, them do
Rubin dung du dA phat triers met nen tang thiet bi di dOng tren nen nhan Linux.
Google quing bi nen tang nay cho the nha sin xuid dien thoai va cac mang vien thong
ding 16i him se cung cep mOt he thong linh hoot va c6 !chi nang Wang cap. Google dA
lien he vii hang loaf hang phan cling ding nhu dai tic phan mem.
Ngay 5 thing 11 nAm 2007, lien minh thiet bi cam tay ma, hay con gqi la Open
Handset Alliance, met hiep Mit gem nhieu cling ty trong de c6 Texas Instrusments, tap
doan Broadcom, Google, HTC, Intel, LG, tap doan Marvell Technology, Motorola,
Nvidia, Qualcom, Samsung Electronics, Sprint Nextel va T-Mobile duqc thanh lap
shim mac Bich phat tries cac tieu chuAn ma cho thiet bi di Ong. Cling chinh thbi
diem de, Android cling duqc ra mit yeti vai tr6 la san phatt n Mu tien ciza Lien minh.
Chiec di'en thoai chay Android du tien duqc ban ra la HTC Dream, chay tren nen tang
nhAn Linux phien ban 2.6, phat hanh ngay 22 thing 10 aim 2008. Su trtmg cita
Android la met con Robot mau xanh la coy do hang thiet ke Irina Blok tai California ye.

6


2.2.2. Cdc Alen bdn Android

a. Android 1.0
Ra mat: 23 thing 11 nom 2008.
Android 1.0 rat nguyen sa, tich hap sin khi rang deng bO der lieu yeti cac djch vu
trqc tuy'en aim Google nhu Gmail, Google Calendar va Contacts, mot trinh phat media,
hit trq Wi-Fi va Bluetooth, thanh tang thai hien thi cac thong bao img dung va mot
img dung chap anh (camera) tuy chua cho phip thay doi dt) phan giai va chat luqng
anh nhu cac thiet bi ngay nay.

chyp anh va quay phim trong Donut nhanh hen. Hg dieu birth ho trq man hinh cep 40
phan giai 16n ham, huOng den clic the hg smartphone min hinh km.
e. Android 2.0 Eclair
Ra mat: 26 thing 10 nam 2009.
Chi sau gin mOt than ra mat Donut (Android 1.6), Google tung ra Eclair, phien
ban dugc nhan djnh la buck di len dm he dien hinh nay.
Eclair c6 rat nhieu chi tien, tit giao dien den (mg dung ben trong he' thOng. Ung
dyng chyp anh tang cubng them chitc nang zoom (phang to), can bang trAng, ha trq
den flash va cac hieu img mau sic.
th0ng hoat dOng On djnh hen, cal thien kha nang xit 1Y, hi5 tug ket not
Bluetooth tot hen, dac biet thy chcon ding hi) nhieu tai 'Moan. Met diem thuan tien
dugc danh gia cao lac bay gib la giao dien danh ba cho phep nhan chgn vac' mOt anh
danh ba de g9i, nhan tin hay email den hq. Giao dien img dyng Lich bleu (Calendar)

He

cung dugc thay dOi.
Eclair IA phien ban Android du tien ha trq anh nen dOng (live wallpaper). Tuy
nhien thy chqn nay tieu ten kha nhieu pin vi titi nguyen may.
f. Android 2.2 Froyo
Ra mat: 20 thing 5 nam 2010.
Tir phien bin 2.0 tro di, Android &I din hoan thien hen. Phie'n bitn 2.2 (Froyo)
duce tich hqp Adobe Flash, keo theo hang lottt img dyng va game. ND:raj dung ding
c6 the xem video clip nen Flash nhu YouTube va "ra lenh" thyc hien cube goi qua ket

net Bluetooth.
MOt chic nang mai trong Froyo dugc them ngubi dimg luu dOng yeu thich IA
USB Tethering va Wi-Fi Hotspot, thin chiec smartphone Android thanh thiet bj phat
sang Wi-Fi to ket net 3G. Tinh tiling nay dugc sit dyng rat phi) hien den ngay nay.
Len diu tien Android cho phep chi dat img dyng (app) len the nher SD thay vi

"Ice Cream Sandwich" (ICS) la the he Android dirge mong dqi nhit den nay, ra
dtri ding ding smartphone bom ten Samsung Galaxy Nexus, the hg smartphone diu
ten sir dung ICS.
Android 4.0 dua chirc nang truy xuat nhanh cac ling dung thutmg dung vao phir'
ben duOi giao dien chit, thy bien widget, sip xep vi duyet danh sach ung dung hon.

a

Cac img dung a c6 the truy xuit nhanh tir man hinh khOa thiet bi (Lock screen), vao
thtri diem d6 cac hang san xuAt thiet bj chi mai cho phep Camera ce the chan nhanh tir
Lock screen. Ice Cream Sandwich host dOng muqt ma, nhanh va dpp han cac phial
ban fru& d6.
j. Android 4.1 Jelly Bean
Ra mit: 9 thing 7 nam 2012.
May tinh bang Nexus 7, san phim hqp the gins Google va Asus, lit thiet bj diu
tien sir dung Jelly Bean. Android 4.1 'Ling dm hog dOng cho he dieu hanh dua
Google, tit thenh he dieu hanh cho thiet bj di dOng hang diu hien nay, de daa ca "8ng
lan" Windows.
KM ring sip xep giao dien chit va widget tong Jelly Bean c6 !dui nang thy bien
cao va rat linh hoot. He thong hO trq dich vu vi dien to Google Wallet, dic biet trinh
9


duyet web mac djnh trong Android duqc thay the bt5i dai dien ten tan: Chrome, yeti
kha neng dOng ba du lieu theo tai khoin vai ban Google Chrome tren may tinh.
k. Android 4.2 Jelly Bean
Ra mat: 29 thang 10 nem 2012.
Chi sau gen nem thang ra mat Android 4.1, Google nep tyc tang cep cho
Android vii phien ban 4.2 va vin mang ten Jelly Bean.
Android 4.2 tiep tpc mang den nhfing cai tien hap din cho (mg ch,mg chop inh


to chuc Ling Liumi

Android Runtime

Libraries IH;1

(Thai

'Tan chay Ar droith

Linux Kernel '.

HIM 2-1: Ctic think pkin csia kf dl kink Android

2.3.L Lima Kernel

DOi vei nhCmg phien ban truer, Android duct xay dung teen 130 than Linux 2.6
cho nheng djch vg cot lei nhu security, memory management, process management,
network stack, driver model. BO than nay lam tillitm vu nhu mOt lap trung gian ktt
not pith' ring thiet bj ya phan *rig dung.
time

Anima('
NDK
apps

Android

SDK

am thanh, hinh anh phe bien.
Surface manager: Quan ly hien thj nei dung 2D va 3D. Cho ph6p tvo cac ciza
so giao
OpenGL: HO trq xay dung ling clung de hqa 2D va 3D.
- SSL: Cung cap chile nang bao inOt cho fiat bi
SGL: Engine he trq M hqa 2D.
Free Type: HO trq cac Font Bitmap va vector
SQLite: Met co sir du lieu nhe gqn va mph me. Cung cep be may co s6 du
lieu duqc nhimg trong thiet bj.
Webkit: Ho trq hien thj nei dung website.

2.3.3. Android Runtime
He dieu hanh Android tich hqp sin met top hqp the thu vien cot 16i, cung cep
heu het cac chirc rang. Mqi ling dung ciut Android chay tren met tien trinh cua rieng
n6 cling v6i met the hien cim may ao Dalvik. May ao Dalvik thuc to la met bien the
dm may ao Java duqc sira Mi, be sung cac cling nghe dOc tnrng cim thiet bi di Mug.
NO duqc xay dung veri intic dich lam cho cac thiet bj di (king c6 the chay nhieu may k
met cach hieu qua.
Tnrem khi chay, mei ling dung Android deli duqc convert thanh file thuc thi Arai
QM dm nen Dalvik Executable (.dex). Dinh long nay duqc thiet ke de phi hqp veri

12


cac thiet bj han the ve b0 :the sung nhu toe do xi 1), . Ngoai chic flan ke tren, may lo
Dalvik cem sir dung b0 nhan Linux de cung cap cac tinh rang nhu thread, low-level
memory management.
2.3.4. Application Framework
Tang nay cia hg dieu hanh Android cung cap mot nen tang phat trien img dung
ma qua (16 cho phep cac lap trinh vien, cac nha phat trien img dung ci kha fling tao ra


2.3.5. Application
Tang nay chinh la tang china cac img dung duct phut trien boi !Op trinh vi'en, the
nha phut trien phan mem. Ngoai met s6 img clung duqc Android tich hqp s&n nhu
email, SMS, trinh duyet web, danh ba... thi ngiteri dimg c6 the de dung cai dOt them
cac Ung dung tin Google Play hay cac chq Ung di,mg Ichac.
2.4. ling dyng tren that b$ Android
2.4.1. Nhfing gldi hgn crra thiit 14 di ding
Mk di' cac thiet bj di dung thong minh c6 the thuc hien nhnng chin Ming tucmg
to nhu met chiec may tinh nhu chay da nhiem, xis 19 de hqa... Nhung thuc chat de van
la met thiet N vOi be nher va pin c6 hon. Ta c6 the dtly mph hieu suet hour dung cue
thiet bj len, tuy [Alien dieu de loi clang nghia vOi viec tieu Mn nhieu dien nAng va tai
nguyen ham, lam gilan then gian sir dung thiet N. Chinh vi the, khfic veri trinh img
dung tren may tinh thong thueng, Mil viet ling dung tren thiet bj di &Ong to can chi' 9
den nhUng gied hen sau:
- Kha rang xir 19, c6 hart
- BO nher co hon
- Pin co gieri hon
- Nen tang hg dieu hanh lchac nhau
- Thanh phAn phan cling khac nhau
- Kich thuerc man hinh nho
- Giao dien don gian
- Bang thong mpg c6 gi6i lion (3G, GPRS)
- Ket n61 mang Ichong 6n djnh.
2.4.2. Ngen ngit 41p trinh
trinh chinh thlic cue Android la Java. Mk du cat img dung tren
NgAn
Android duqc vitt bang nein agar Java, tuy nhien ban than Android lui !cluing the chay
duqc cac t$p tin Java c6 dung .jar. Ngen ner Java sir dung trong Android khong phai
la town be thu vier J2EE (Java 2 Platform, Enterprise Editiion) ma chi la met pit nho

Veri Google Map Android API, ban c6 the de clang dua ban de coa Google vao
trong Ong dung ciut minh. API se Air dOng xir ly vie'c truy cep den Google Map server,
tai a lieu, hien thi ban d6 va phan hei the tic dung. Ban cling c6 the sir dung cac ham
cisa API de them cac markers, cac hinh khei, cac lop phi( vio ban de co ban, va ban
cling c6 the tao met g6c (thin ban d6 rieng. Nhung doi Wong (16 cung cap cac thong tin
mer rung cho dia diem, giiip ngueri dimg c6 the giao tiep veri ban de. API cho phep
ngtren thing c6 the dua them cac thanh phen sau vio ban de:

Bieu tugng de &nit deu met vi tri cv the (Marker)
Tap cac (loan thing (Polylines)
Tap cac hInh hgc (Polygons)
Bieu tugng do hem de &nit dau mOt diem ten ban de' (Ground overlays)
tieu de cim ban (16 (Tile overlays)
Be cac hlnh anh duce hien thi tren
3.2. Sir dyng Google Map API
3.2.1. ai dtlt va cacti hiy Google Map API

3.2.1.1. Cai cidt
- Tren thanh Menu: Window > Android SDK Manager
Ede Edit ReNtbiii Seine EtaiNdte SW& Eidied

ENO

bin

Navatindow
New Rotor
Fide Toolbar
open Pespedive



- Tick vi o Google API cho phien ban Android muiin &mg de to irng clang:
a
Tools

Packages

SDK Path: EASTUDV1Androidbdt-bundle-windows-3d36 64-2013052Asdk
Packages
*

API

Name
1, Android SDK Platform-tools
❑ , Android SOK Build-tools
7' Android SDK Build-tools

■1

;

So mp les f or SOK

n I. ARM EA81v7a System Image
Milt Gavle AM
n is Sources forAndmid SDK

4


2* SOK Piatfam
EI

Rev.

15 Installed

18
18
18
18
18
18

1
1
1
1
1
7

0 Not installed
n Nat installed
in Not installed
fl n Not installed
rj Not installed
I n Not installed

17


Delete 5 pncbges—

I

Done loadng packages.

Binh 3-2: Cal * Google API

- Ka° tiep xueng duUi caa dank sich, chon Google Play services vu click vio
nut Install 2 package

17


4

Packages Tools
SDK Pads E15TUDY1Androithadt-bundlewindows-x86_64-201305221sdk
Packages
API

a Name
Ola Android SuppatKepasitaryl
Android Support Library
0 a GocgleAdMob Ads SDK

2

a


_ . Nat installed

7

a Update available rev. 9

1
3
4
2

— Not instead
_
— Nat installed
..
Nat installed
= Not installed

7

a Update available rev. 8

2
3

= Not installed
7-1 Not installed
v

❑ Obsolete Select asay °clads*

- Sau khi cal dilt, import project thu vier vao tong Workspace: Click File >
Import

Rink 3-4: Import

18

mu wee.


- Ch6n Android > Existing Android Code into Workspace

Select

Sled an import source
type filter text
0

a General

• 123 Android

ItS bitting Android Code Into Workspace
I, a cic..
0

(a, Git

D


Files\Java\jre7 \ bin

19


Nhap lenh Keytool -list -v -keystore <your keystore name> -alias
androiddebugkey. Viii <you keystore name> la dubng clan ley tin Eclipse nhu
sau: Windows > Preferences > Android > Build > Copy clang Default debug
keystore.
Nhap password la android, Enter > Hien thi ra SHAI. Copy SHA1

a six dung

cho buoy b.
b. Lay google api key
Vao Hang nhap bang tai khoan Google.
- Chbn Create Project.
- Ka° ming duet Click vao Google Maps Android API v2 de chuyen trang
thai sang On
An Google Contacts Car IDAV API

• S off

It Google Maps Android API v2



MCI
on


Activated en

Ian, 13, 2013327

Aclestad by:

tonowmpionaamelsom - you

:al: cos

AM

Kay kr browser appe OS tekrea
aisestrookumsnorrowskut VOCKII7SICLIb•
AF1 key
Any saw alond
Ragan.
AMOS on: May 13, Ma 32e AM
torrnmatantaynalsem - you
MIMS Of

GY M Kerrie toy.- aaggeonniseet lard.,1 GSM sprarMagid tak..I Oule gas tea gwy_. I

Mink 3-7: Tgo API key

20


. >
- Dan SHA I dA thy dirge to (a) va them package img dung cua mink vio cu &


Rink 34: Tpo API Key 2

- API hien ra, copy de dung cho viec lop trinh img dyng cita mirth
Simple API Man
Use API keys to identify your project when you do not need to access user data. Learn more
Key for Android apps (with certificates)
API key.
Android apps:

A6:36:COOD:SC:6E:89:21:99:1113:A9:6E:EC:D8:11:F2: 4 F:B2 : 11"4 : 81 ;coa

Activated on:

May 13, 2013 3:27 AM

Activated by.

tuantrungphamilagmadcom - you

Key for browser apps (with referers)
AltaSyDrtIclAYillitikvOk3jhz VdqgliE7S/Cd3hw
API key.
Referers:

My referer allowed

Activated on:

May 13, 2013 326 AM

Builders
lava Build Path
An Code Style
D lava Compier
D lava Editor
lavadoc Location
Project References
Refactoring History
Run/Debug Settings
Task Tags
Va6dation

Android
Project Build Target
Target Name
0 Android 2.3.3
❑ Goodie APS
❑ Android 4.0
En G40914 APS
❑ Android 4.22

Vendor
Android Open Source Project
Google Inc.
Android Open Source Project
Googk Inc.
Android Open Source Project

Plefonn


- File AndroidManifest:
✓ Sir dung Google Maps thi can c6 intemet non can lchai boo quyen sir dung
intemet:
<uses-permission androitname="androidpermission.INTERNErn>

✓ Them permission de duc dit lieu ciia Google Services:


- MainActivity extends FragmentActivity.
- Choy this, hien thi ban dO la thanh ding.
3.3. Clic 86i tuvng quan trong trong Google Map API

private GoogleMap mMap;
mMap = ((MapFragment) getFragmentManager0.findFragmentByld(R.idmap)).gelMaPO;
mMap.addMarker(new MarkerOptionsO
.position(new LatLng(0, 0))
.title("Xin chao"));

3.3.2.2. My biin Marker
Marker co the duqc tity bien theo nhieu cich Ichac nhau, vi du nhu thay dei bieu
tuqng hay each Marker phan heti lai thao tic cea ngubi &mg.
Marker co the duqc tey hien cac thuOc unit sau:
a. Position (Vi tri)
Gia trj ctia dei tuqng Laing se xac djnh vj tri ctia Marker tren ban de. Day la gia
tri bat buOc phai dua vao khi chen Marker
b. Anchor
vao so vai gia tri cfla Lating. Vi tri mic

Diem ma bieu ttrqng Marker se duce
djnh lab gifta pit dugi cia bieu tucmg.
c. Title (Tieu de)

Day la tieu de cia Marker, khi ngubi dimg ba
tin hi'en len kern theo tieu de.



vao marker se co cua

so thong

d. Snippet


3.3.2.4. Thay ddi blaze turmg Marker
Ngoai thay d6i mau sic, ta hoen than c6 the thay d6i bleu tuqng cim Marker.
Bieu tircmg thy chip luon duqc dat thkili mat di turyng BitmapDescription bang each
sir dung met trong bon plurcmg thirc cua doi tuqng BitmapDescriptionFactory:
- fromAsset(String assetName): sit clung mat anh trong thy myc asset
- fromBitmap (Bitmap image): sir dung mat anh Bitmap
- fromFile (String path): sii dung mat anh trong mat during den cy thi
- fromResource (int resourceld): stt dung mat tai nguyen caa churmg trinh
Sau day la vi du viec Lao Marker ved bleu tam dat trong drawable:
private static final LatLng HANOI = new LatLng(0,0);
private Marker melbourne = mMap.addMarker(new MarkerOptionsO
position(HANOD
litlerHANOI '9
.snippetrPopulation: 4,137,400'9
icon(BihnapDescriptorFactoryfromResource(R.drawable.arrow)));

3.3.2.5. Sy. ben nia Marker
Map API cho phep ngued I p trinh c6 the ling nghe v3 phan hai su kien cua mot
Marker. DE c6 the lung nghe su kien nay, ngubi lap trinh can phai cai dat listener
arcing (mg tr d6i tuqng GoogleMap china marker do.
Ngueli lap trinh c6 the xir Iy cac su kien sau:
- Sr kien barn vio marker

26


- Sr kien keo tha marker
- Scr kien barn vao InfoWindow
a. Su ki4n barn vac, marker

Marker melbourne = mMap.addMarker(new MarkerOptionsO
.position(DEMO)
.titlerDemo Title")
.snippet("Demo Snippet");

27


Trích đoạn Sau khi kiem tra met khau, neu met khau chinh xic, Server se tien hanh cap nh$t thong tin dm nguai dung va gui ve th8ng bio cho ngirdri dung. Kin tti djnh vj 4 tri thiit bj Bang users Thu 10 nhudn tie zing dung
Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status