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

Bài tập lớn CNTT - Xây dựng ứng dụng đọc báo RSS

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 (2.1 MB, 64 trang )

TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚN

NGÀNH CÔNG NGHỆ THÔNG TIN
Xây dựng ứng dụng đọc báo RSS

Họ và tên sinh viên

:

Ngày sinh

:

Mã số học viên

:

L p

:

Hà Nội - 2021


1. Ứng dụng Android
ndroid c l ng ứng dụng c bên thứ b ngày càng nhi u đ c chọn lọc và đ t
trên một c hàng ứng dụng nh Google Pl y h y m zon ppstore đ ng i d ng l y
v ho c b ng cách t i xuống r i cài đ t t p tin PK t tr ng web khác ác ứng dụng trên


hàng Pl y cho ph p ng i d ng duy t t i v và c p nh t các ứng dụng do Google và
các nhà phát tri n thứ b phát hành
hàng Pl y đ c cài đ t sẵn trên các thiết b th
mãn đi u ki n t ng th ch c Google ng dụng s tự động lọc r một d nh sách các ứng
dụng t ng th ch v i thiết b c ng i d ng và nhà phát tri n c th gi i hạn ứng dụng
c họ chỉ dành cho những nhà mạng cố đ nh ho c những quốc gi cố đ nh v l do kinh
do nh Nếu ng i d ng mu một ứng dụng mà họ c m th y kh ng th ch họ đ c hoàn tr
ti n s u
ph t k t l c t i v và một vài nhà mạng c n c kh n ng mu gi p các ứng
dụng trên Google Pl y s u đ t nh ti n vào trong h đ n s dụng hàng tháng c ng i
d ng Đến n m
c h n
tri u ứng dụng dành cho ndroid và số l
t iv t
hàng Pl y c t nh đạt
t l t

ng ứng dụng

Hình 1.4.1: Giao diện trang chủ Google Play
ác ứng dụng cho ndroid đ c phát tri n b ng ng n ngữ J v s dụng bộ phát
tri n ph n m m ndroid S K S K b o g m một bộ đ y đ các c ng cụ d ng đ phát
tri n g m c c ng cụ g l i th vi n ph n m m bộ gi l p đi n thoại dự trên Q MU
tài li u h ng dẫn mã ngu n mẫu và h ng dẫn t ng b c M i tr ng phát tri n t ch
h p I
đ c h tr ch nh thức là clipse s dụng ph n bổ sung ndroid evelopment
Tools
T
ác c ng cụ phát tri n khác cũng c sẵn g m c Bộ phát tri n gốc dành
cho các ứng dụng ho c ph n mở rộng viết b ng ho c

Google pp Inventor một


m i tr ng đ họ cho những nhà l p tr nh m i b t đ u và nhi u n n t ng ứng dụng web
di động đ n n t ng phong ph
1.1. Quản lý bộ nhớ Android
V các thiết b ndroid đ c thiết kế đ qu n l bộ nh R M đ gi m tối đ mức
tiêu thụ đi n n ng trái v i h đi u hành máy t nh đ bàn lu n cho r ng máy t nh s c
ngu n đi n kh ng gi i hạn Khi một ứng dụng ndroid kh ng c n đ c s dụng h
thống s tự động ng ng n trong bộ nh -trong khi ứng dụng v m t k thu t vẫn "mở"
những ứng dụng này s kh ng tiêu thụ b t cứ tài nguyên nào nh n ng l ng pin h y
n ng l ng x l và n m đ cho đến khi n đ c c n đến ách làm nh v y c l i k p
là v làm t ng kh n ng ph n h i n i chung c thiết b ndroid v ứng dụng kh ng
nh t ph i đ ng r i mở lại t đ u v đ m b o các ứng dụng n n kh ng làm tiêu h o n ng
l ng một cách kh ng c n thiết
ndroid qu n l các ứng dụng trong bộ nh một cách tự động: khi bộ nh th p h
thống s b t đ u di t ứng dụng và tiến tr nh kh ng hoạt động đ c một th i gi n s p theo
th i đi m cuối mà ch ng đ c s dụng tức là cũ nh t s b t t tr c Tiến tr nh này đ c
thiết kế ẩn đi v i ng i d ng đ ng i d ng kh ng c n ph i qu n l bộ nh ho c tự t y
t t các ứng dụng Tuy nhiên sự che gi u này c h thống qu n l bộ nh
ndroid đã dẫn
đến sự th nh hành c các ứng dụng t t ch ng tr nh c bên thứ b trên c hàng Google
Pl y những ứng dụng ki u nh v y đ c cho là c hại nhi u h n c l i
1.2. Nhân Linux
ndroid c một hạt nhân dự trên nhân Linux phiên b n
k
ndroid
Ice
re m S ndwich bánh ngọt k p kem trở v s u là phiên b n x v i middlew re th
vi n và PI viết b ng c n ph n m m ứng dụng chạy trên một n n t ng ứng dụng g m

các th vi n t ng th ch v i J v dự trên p che H rmony ndroid s dụng máy o
lvik v i một tr nh biên d ch động đ chạy mã dex
lvik xecut ble c
lvik
th ng đ c biên d ch s ng J v bytecode N n t ng ph n cứng ch nh c
ndroid là kiến
tr c RM Ng i t cũng h tr x8 th ng qu dự án ndroid x8 và Google TV cũng
s dụng một phiên b n x8 đ c bi t c
ndroid
Một số t nh n ng cũng đ

c Google đ ng g p ng

c vào nhân Linux đáng ch

là t nh n ng qu n l ngu n đi n c tên w kelock nh ng b những ng

i l p tr nh ch nh

cho nhân t chối v họ c m th y Google kh ng c đ nh s tiếp tục b o tr đoạn mã do họ
viết


Google th ng báo vào tháng n m
r ng họ s thuê h i nhân viên đ làm vi c v i
cộng đ ng nhân Linux nh ng Greg Kro h-H rtm n ng i b o tr nhân Linux hi n tại
c nhánh ổn đ nh đã n i vào tháng
n m
r ng ng t lo ngại r ng Google kh ng
c n muốn đ những th y đổi c m nh vào Linux d ng ch nh nữ Một số l p tr nh viên

ndroid c Google t
r ng "nh m ndroid th y chán v i quy tr nh đ " v nh m họ
kh ng c nhi u ng i và c nhi u vi c khẩn c p c n làm v i ndroid h n
Vào tháng 8 n m
Linus Torv lds r ng "rốt cuộc th ndroid và Linux cũng
s trở lại v i một bộ nhân chung nh ng đi u đ c th s kh ng x y r trong ho c
n m nữ " Vào tháng
n m
Greg Kro h-H rtm n th ng báo k ch hoạt ự án
ng ch nh ndroid nh m t i vi c đ một số driver b n vá và t nh n ng c
ndroid
ng c vào nhân Linux b t đ u t Linux
Linux cũng đ t nh n ng utosleep tự nghỉ
hoạt động và w kelocks vào nhân
s u nhi u n lực phối trộn tr c đ T ng tác th
vẫn v y nh ng b n hi n thực trên Linux d ng ch nh cho ph p h i chế độ nghỉ: bộ nh
dạng nghỉ truy n thống mà ndroid s dụng và đ là ng đ ng trên máy t nh đ bàn
Vi c trộn s hoàn t t k t nhân 8 Google đã c ng kh i kho mã ngu n trong đ c
những đoạn th nghi m đ
ndroid v lại nhân 8
Bộ l u trữ fl sh trên các thiết b ndroid đ c chi thành nhi u phân v ng nh
"system" dành cho h đi u hành và " d t " dành cho dữ li u ng i d ng và cài đ t ứng
dụng Khác v i các b n phân phối Linux cho máy t nh đ bàn ng i sở hữu thiết b
ndroid kh ng đ c tr o quy n truy c p root vào h đi u hành và các phân v ng nhạy
c m nh system đ c thiết l p chỉ đọc Tuy nhiên quy n truy c p root c th chiếm đ c
b ng cách t n dụng những l hổng b o m t trong ndroid đi u mà cộng đ ng mã ngu n
mở th ng xuyên s dụng đ nâng c o t nh n ng thiết b c họ k c b những ng i ác
s dụng đ cài virus và ph n m m ác
Vi c ndroid c đ c xem là một b n phân phối Linux h y kh ng vẫn c n là v n
đ gây tr nh cãi tuy đ c Linux ound tion và hris iBon tr ởng nh m mã ngu n

mở Google ng hộ Một số khác nh linux-m g zine com th kh ng đ ng do ndroid
kh ng kh ng h tr nhi u c ng cụ GNU trong đ c glibc
1.3. Lịch nâng cấp
Google đ r các b n nâng c p l n cho ndroid theo chu k t
đến tháng mà
ph n l n thiết b đ u c th nh n đ c qu s ng kh ng dây B n nâng c p l n m i nh t là
Android 9.0 Pie.

1
3


So v i các h đi u hành cạnh tr nh khác nh iOS các b n nâng c p

ndroid

th ng m t th i gi n lâu h n đ đến v i các thiết b V i những thiết b kh ng thuộc d ng
Nexus các b n nâng c p th ng đến s u vài tháng k t khi phiên b n đ c ch nh thức
phát hành Nguyên nhân c vi c này một ph n là do sự phong ph v ph n cứng c các
thiết b ndroid nên ng i t ph i m t th i gi n đi u chỉnh b n nâng c p cho ph h p v
mã ngu n ch nh thức c Google chỉ chạy đ c trên những thiết b Nexus ch lực c họ
huy n ndroid s ng những ph n cứng cụ th là một quy tr nh tốn th i gi n và c ng sức
c các nhà s n xu t thiết b những ng i lu n u tiên các thiết b m i nh t và th ng b
r i các thiết b cũ h n o đ những chiếc đi n thoại th ng minh thế h cũ th ng kh ng
đ c nâng c p nếu nhà s n xu t quyết đ nh r ng n kh ng đáng đ b th i gi n b t k
chiếc đi n thoại đ c kh n ng chạy b n nâng c p h y kh ng V n đ này c n tr m trọng
h n khi những nhà s n xu t đi u chỉnh ndroid đ đ gi o di n và ứng dụng c họ vào
những thứ này cũng s ph i làm lại cho m i b n nâng c p Sự ch m tr c n đ c đ ng
g p bởi nhà mạng s u khi nh n đ c b n nâng c p t nhà s n xu t họ c n đi u chỉnh
thêm cho ph h p v i nhu c u r i th nghi m k l ng trên h thống mạng c họ tr c

khi chuy n n đến ng i d ng
Vi c thiếu các h tr h u mãi c nhà s n xu t và nhà mạng đã b những nh m
ng i d ng và các tr ng tin c ng ngh chỉ tr ch r t nhi u Một số ng i viết c n n i r ng
gi i c ng nghi p do cái l i v tài ch nh đã cố t nh kh ng nâng c p thiết b v nếu thiết b
hi n tại kh ng c p nh t s th c đẩy vi c mu thiết b m i một thái độ đ c coi là "x c
phạm" The Gu rdi n đã th n phi n r ng ph ng cách phân phối b n nâng c p trở nên
phức tạp ch nh v những nhà s n xu t và nhà mạng đã cố t nh làm n nh thế Vào n m
Google đã h p tác c ng một số hãng c ng nghi p và r m t "Liên minh nâng c p
ndroid" v i l i hứ s nâng c p th ng xuyên cho các thiết b trong v ng 8 tháng s u
khi r m t T nh đến n m
ng i t kh ng c n nghe nh c đến liên minh này nữ
1.4. Cộng đồng mã nguồn mở
ndroid c một cộng đ ng các l p tr nh viên và những ng i đ m mê r t n ng
động Họ s dụng mã ngu n ndroid đ phát tri n và phân phối những phiên b n chỉnh
s c h đi u hành ác b n ndroid do cộng đ ng phát tri n th ng đem những t nh
n ng và c p nh t m i vào nh nh h n các kênh ch nh thức c nhà s n xu t nhà mạng tuy
kh ng đ c ki m th k l ng cũng nh kh ng c đ m b o ch t l ng cung c p sự h
tr liên tục cho các thiết b cũ kh ng c n nh n đ c b n c p nh t ch nh thức ho c m ng
ndroid vào những thiết b b n đ u chạy một h đi u hành khác nh HP Touchp d ác
1
4


b n ndroid c cộng đ ng th ng đ c root sẵn và c những đi u chỉnh kh ng ph h p
v i những ng i d ng kh ng rành r nh kh n ng p xung ho c t ng gi m áp bộ x l
c thiết b
y nogenMod là firmw re c cộng đ ng đ c s dụng phổ biến nh t và
hoạt động nh một tổ chức c số đ ng khác
Tr c đây nhà s n xu t thiết b và nhà mạng t r thiếu thi n ch v i vi c phát
tri n firmw re c bên thứ b Những nhà s n xu t c n th hi n lo ngại r ng các thiết b

chạy ph n m m kh ng ch nh thức s hoạt động kh ng tốt và dẫn đến tốn ti n h tr H n
nữ các firmw re đã th y đổi nh
y nogenMod đ i khi c n cung c p những t nh n ng
nh truy n t i mạng tethering mà ng i d ng b nh th ng ph i tr ti n nhà mạng m i
đ c s dụng Kết qu là nhi u thiết b b t đ u đ t r hàng rào k thu t nh kh
bootlo der h y hạn chế quy n truy c p root Tuy nhiên khi ph n m m do cộng đ ng phát
tri n ngày càng trở nên phổ biến và s u một th ng cáo c Th vi n Quốc hội Ho K
cho ph p j ilbre k v t ngục thiết b di động các nhà s n xu t và nhà mạng đã t r
m m m ng h n v i các nhà phát tri n thứ b th m ch một số hãng nh HT Motorol
S msung và Sony c n h tr và khuyến kh ch phát tri n Kết qu c vi c này là d n d n
nhu c u t m r các hạn chế ph n cứng đ cài đ t đ c firmw re kh ng ch nh thức đã b t
đi do ngày càng nhi u thiết b đ c phát hành v i bootlo der đã mở kh sẵn ho c c th
mở kh t ng tự nh đi n thoại d ng Nexus tuy r ng th ng th ng họ s yêu c u ng i
d ng t b chế độ b o hành nếu họ làm nh v y Tuy nhiên tuy đ c sự ch p thu n c
nhà s n xu t một số nhà mạng tại M vẫn b t buộc đi n thoại ph i b kh
Vi c mở kh và h ck đi n thoại th ng minh và máy t nh b ng vẫn c n là tác
nhân gây c ng thẳng giữ cộng đ ng và c ng nghi p ộng đ ng lu n bi n hộ r ng sự h
tr kh ng ch nh thức ngày càng trở nên qu n trọng tr c vi c n n c ng nghi p kh ng
cung c p các b n c p nh t th ng xuyên và ho c ng ng h tr cho ch nh các thiết b c
họ
1.5. Bảo mật và tính riêng tƣ của Android
ác ứng dụng ndroid chạy trong một "hộp cát" là một khu vực riêng r v i h
thống và kh ng đ c tiếp c n đến ph n c n lại c tài nguyên h thống tr khi n đ c
ng i d ng tr o quy n truy c p một cách c ng kh i khi cài đ t Tr c khi cài đ t ứng
dụng
hàng Pl y s hi n th t t c các quy n mà ứng dụng đ i h i: v dụ nh một tr
ch i c n ph i k ch hoạt bộ rung ho c l u dữ li u vào th nh S nh ng n kh ng nên
c n quy n đọc tin nh n SMS ho c tiếp c n d nh bạ đi n thoại S u khi xem x t các quy n

1

5


này ng i d ng c th chọn đ ng
ng i d ng đ ng

ho c t chối ch ng ứng dụng chỉ đ

c cài đ t khi

H thống hộp cát và h i quy n làm gi m b t nh h ởng c l i b o m t ho c l i
ch ng tr nh c trong ứng dụng nh ng sự bối rối c l p tr nh viên và tài li u h ng dẫn
c n hạn chế đã dẫn t i những ứng dụng h y đ i h i những quy n kh ng c n thiết do đ
làm gi m đi hi u qu c h thống này Một số c ng ty b o m t nh Lookout Mobile
Security VG Technologies và Mc fee đã phát hành những ph n m m di t virus cho
các thiết b ndroid Ph n m m này kh ng c hi u qu v c chế hộp cát vẫn áp dụng vào
các ứng dụng này do v y làm hạn chế kh n ng qu t sâu vào h thống đ t m nguy c
Một nghiên cứu c c ng ty b o m t Trend Micro đã li t kê t nh trạng lạm dụng
d ch vụ tr ti n là h nh thức ph n m m ác phổ biến nh t trên ndroid trong đ tin nh n
SMS s b g i đi t đi n thoại b nhi m đến một số đi n thoại tr ti n mà ng i d ng
kh ng h h y biết Loại ph n m m ác khác hi n th những qu ng cáo kh ng mong muốn
và gây kh ch u trên thiết b ho c g i th ng tin cá nhân đến bên thứ b khi ch đ c
ph p Đe dọ b o m t trên ndroid đ c cho là t ng r t nh nh theo c p số mũ tuy nhiên
các k s Google ph n bác r ng hi m họ t ph n m m ác và virus đã b thổi ph ng bởi
các c ng ty b o m t nh m mục đ ch th ng mại và buộc tội ngành c ng nghi p b o m t
đ ng l i dụng sự s hãi đ bán ph n m m di t virus cho ng i d ng Google vẫn giữ qu n
đi m r ng ph n m m ác th t sự nguy hi m là cực k hiếm và một cuộc đi u tr do Secure thực hi n cho th y chỉ c
số ph n m m ác
ndroid là len vào đ c c
hàng Google Pl y

Google hi n đ ng s dụng bộ qu t ph n m m ác

Google Bouncer đ theo d i và

qu t các ứng dụng trên
hàng Google Pl y N s đánh d u các ph n m m b nghi ng
và c nh báo ng i d ng v những v n đ c th x y r tr c khi họ t i n v máy
ndroid phiên b n
Jelly Be n đ c phát hành vào n m
c ng v i các t nh n ng
b o m t đ c c i thi n b o g m một bộ qu t ph n m m ác đ c cài sẵn trong h thống
hoạt động c ng v i Google Pl y nh ng cũng c th qu t các ứng dụng đ c cài đ t t
ngu n thứ b và một h thống c nh báo s th ng báo cho ng i d ng khi một ứng dụng
cố g ng g i một tin nh n vào số t nh ti n ch n tin nh n đ lại tr khi ng i d ng c ng
kh i cho ph p n
Đi n thoại th ng minh ndroid c kh n ng báo cáo v
i phát hi n r vi c di chuy n c ng i d ng đi n thoại đ
li u c chứ v tr c hàng tr m tri u đi m truy c p Những c
b n đ đi n t đ t m v tr đi n thoại th ng minh cho ph p ch

tr c đi m truy c p Wixây dựng những c sở dữ
sở dữ li u này tạo nên một
ng chạy các ứng dụng nh
1
6


oursqu re Google L titude
cebook Pl ces và g i những đoạn qu ng cáo dự trên v
tr Ph n m m theo d i c bên thứ b nh T int roid một dự án nghiên cứu trong

tr ng đại học đ i khi c th biết đ c khi nào th ng tin cá nhân b g i đi t ứng dụng
đến các máy ch đ t ở x
B n ch t mã ngu n mở c
ndroid cho ph p những nhà th u b o m t l y những
thiết b sẵn c r i đi u chỉnh đ s dụng ở mức độ b o m t c o h n V dụ nh S msung
đã cộng tác v i Gener l yn mics s u khi họ thâu t m Open Kernel L bs đ xây dựng lại
Jellybe n trên n n bộ vi ki m soát dành cho dự án "Knox"


2.MƠI TRƢỜNG LẬP TRÌNH ANDROID STUDIO

2.1. Sơ lƣợc về Android Studio
Google cung c p một c ng cụ phát tri n ứng dụng ndroid trên Website ch nh
thức dự trên n n t ng IntelliJ I
gọi là ndroid Studio ndroid studio dự vào
IntelliJ I
là một I
tốt cho nh t hi n n y o đ
ndroid Studio s là m i tr ng
phát tri n ứng dụng tốt nh t cho ndroid
2.2. Cài đặt Android Studio
2.2.1. Yêu cầu phần cứng máy tính
a) Hệ điều hành Windows









 Microsoft® Windows®
 R M tối thi u
l p ndroid 

8

-bit ho c

-bit).

GB khuyến ngh s dụng R M 8 GB cộng

 Tối thi u GB dung l ng đ trống GB đ c đ xu t
GB cho ndroid S K và h nh nh h thống m ph ng 
 Độ phân gi i màn h nh tối thi u

8 x8

GB cho tr nh gi
MB cho I



b) Hệ điều hành MacOS
 M c® OS X®
Sierra).

Yosemite ho c c o h n lên đến


 R M tối thi u
l p ndroid 

GB khuyến ngh s dụng R M 8 GB cộng

 Tối thi u GB dung l ng đ trống GB đ c đ xu t
GB cho ndroid S K và h nh nh h thống m ph ng 

m cOS High
GB cho tr nh gi
MB cho I
1
7







 Độ phân gi i màn h nh tối thi u

8 x8



c) Hệ điều hành Linux
 Th vi n GNU
 R M tối thi u
l p ndroid 


glibc

ho c m i h n 

GB khuyến ngh s dụng R M 8 GB cộng

 Tối thi u GB dung l ng đ trống GB đ c đ xu t
GB cho ndroid S K và h nh nh h thống m ph ng 
 Độ phân gi i màn h nh tối thi u

8 x8

GB cho Tr nh gi
MB cho I



1
8


2.2.2. Phần mềm Android Studio
 Vào đ ng dẫn: https: developer ndroid com studio đ downlo d b n m i
nh t và tiến hành cài đ t nh h nh:

H nh
 Khi cài đ t ch

chọn c S K và tr nh gi l p thiết b ndroid o


H nh


: Tr ng downlo d ndroid Studio
V nh h nh:

: Gi o di n cài đ t S K và V

 Tiếp tục chọn next và gree cho đến khi hoàn t t 
 Khi vi c cài đ t hoàn t t ch ng t s đ

c nh h nh s u:
1
9


H nh

: Gi o di n c

sổ ndroid Studio khi cài đ t hoàn t t

2.2.3. Thiết bị ảo trong Android Studio
Máy o ndroid là một ph n kh ng th thiếu khi ch ng t l p tr nh ứng dụng cho
h đi u hành ndroid n gi p ch ng t chạy th ứng dụng ng y trên máy t nh Và c ng
cụ máy o ti n dụng hi n gi là Genymotion


 Đ cài đ t máy o Genymotion t truy c p vào đ

/>
ng dẫn:

 Ta ph i tạo một tài kho n r i đ ng nh p vào m i th y đ

H nh

c mục này:

: Gi o di n downlo d máy o Genymotion

 Ở đây t nên t i phiên b n with Virtu Box v ch ng tr nh t ch h p sẵn
Virtu Box cho ch ng t v máy o này ph i c Virtu Box m i chạy đ c 
2
0


 S u khi cài xong s c gi o di n nh s u:

H nh



: Gi o di n ch nh c

Genymotion

 T c n đ ng nh p vào tạo một cái máy o



ác ph m chức n ng c máy o Genymotion
- Start: B t đ u khởi động máy o
- Add: Tạo máy o
- Setting: ài đ t

 Nh n vào dd đ tạo máy o 

H nh

: Gi o di n chọn máy o
21





 S u đ chọn một ho c nhi u thiết b theo muốn nh ở đây t i chọn ustom
Phone - 5.1.0 - API 22 - 768x1280 ) :
- Custom Phone: là tên thiết b máy o
- 5.1.0: là phiên b n h đi u hành ndroid
- API: pplic tion Progr mming Interf ce gi o di n l p tr nh ứng dụng
- 768x1280: Độ phân gi i màn h nh
 Bạn chọn thiết b s u đ nh n Next s c gi o di n th ng tin thiết

H nh

: Gi o di n xem th ng tin máy o đ ng chọn

 S u đ tiếp tục nh n Next và inish đ hoàn thành cài máy o


H nh

8: Gi o di n hi n th th ng tin máy o s u khi đ

c tạo
22


 T tiếp tục nh n vào thiết b và nh n St rt đ khởi động máy o

H nh

: Gi o di n màn h nh đ ng khởi động và khi khởi
động xong c máy o Genymotion

2.3. Cấu trúc dự án android studio
2.3.1. Tạo mới một Project


lick vào d ng St rt new ndroid Studio project nh h nh s u:

H nh

: Gi o di n c

sổ đ u tiên khi chọn ndroid Studio
23


H nh



: Gi o di n tạo project ndroid

 Khi đ xu t hi n màn h nh tạo project ndroid g m các thành ph n s u:
- Application Name: Tên ứng dụng muốn đ t
-

Company Domain: Tên dom in c ng ty th ng đ c d ng đ kết h p v i tên
pplic tion đ tạo thành P ck ge ch
viết th ng hết và c t nh t d u
ch m

-

Package name: N s tự động nối ng
name

-

Project location: Là n i l u trữ ứng dụng

c omp ny om in v i pplication

 S u đ nh p Next đ tiếp tục 
2.3.2. Cài đặt một Project

H nh

: Gi o di n chọn thiết b và phiên b n h đi u hành

2
4




 Ở hộp thoại trên cho ph p t lự chọn là ứng dụng s đ
nào Phone nd T blet TV We r 


c viết cho những thiết b

họn phiên b n ndroid ph h p r i nh n Next

H nh


: họn ki u màn h nh cho ứng dụng

họn Empty Activity r i b m Next

-

H nh
: Đ t tên cho màn h nh
Activity Name: Tên cl ss ctivity j v đ t viết mã l nh
Layout Name: Tên file XML làm gi o di n cho ctivity N me

 S u khi c u h nh xong b m inish
25



 Khi build xong m c đ nh c màn h nh d

H nh

i đây:

: Gi o di n s u khi r tạo thành c ng project

2.3.3. Màn hình làm việc của dự án Android Studio


 Theo m c đ nh ndroid Studio hi n th các files trong project theo g c nh n
ndroid G c nh n này ndroid Studio s tổ chức các files theo module:
- manifests: chứ file ndroidM nifest xml
- java: chứ các file mã ngu n J v
- res: chứ t t c các file l yout xml gi o di n ng i d ng UI nh
 M c đ nh activity_main.xml s cho t c màn h nh nh s u:

H nh

: ác v ng làm vi c trong Android Studio
26




 Ở h nh
:

-

tạm th i chi làm v ng làm vi c mà l p tr nh viên th

ng tác

Vùng 1: Là n i c u tr c h thống th ng tin c
ng dụng T c th th y đổi
c u tr c hi n th th ng đ m c đ nh là ndroid

H nh
-

ng t

8:

u tr c th mục d

i dạng ndroid

Vùng 2 : Là v ng khá qu n trọng cho những bạn m i b t đ u l p tr nh n là
n i hi n th các ontrol mà ndroid h tr cho ph p bạn k o th trực tiếp vào
v ng đ thiết kế

2
7


H nh

-

Vùng 3: Khi màn h nh c nhi u control th v ng này trở lên hữu ch n cho
ph p hi n th gi o di n theo dạng c u tr c cây nên t d dàng qu n sát và lự
chọn control khi ch ng b ch ng l p trên gi o di n v ng

H nh
-

: ác control đ k o th vào màn h nh

:

u tr c gi o di n theo dạng cây

Vùng 4 : Là v ng gi o di n thiết b cho ph p các ontrol k o th vào đây và
đ ng th i cho t hi u ch nh control

2
8


H nh

: V ng gi o di n đ các control k o th vào

V ng t c th chọn cách hi n th theo n m ng ng n m đứng ph ng to thu
nh c n chỉ control lự chọn loại thiết b hi n th …
-


-

Vùng 5 : V ng này r t qu n trọng đây là v ng cho ph p thiết l p trạng thái h y
thuộc t nh cho các ontrol trên gi o di n

H nh
: V ng hi n th thuộc t nh c control n m trên màn h nh
Vùng 6 : Là v ng các chức n ng qu n trọng th ng d ng trong ndroid
Studio.

H nh

: ác n t qu n trọng trên Android Studio

2.4. Các thành phần trong một ứng dụng Android
Ph n này t m hi u các thành ph n c b n nh t tạo nên một ứng dụng ndroid
Hi u v các thành ph n này gi p cho c một cái nh n tổng qu n v c u tr c ứng dụng


 Activity : là một thành ph n c ứng dụng ndroid n s bi u di n gi o di n c
một màn h nh nào đ trong ứng dụng c bạn Một ứng dụng c th s c nhi u
màn h nh và m i màn h nh c th là một ctivity [2] Class Activity đ nh ngh
nhi u ph ng thức cho các sự ki n bạn kh ng c n ph i thực thi t t c các ph ng
2
9


thức này tuy nhiên vi c hi u r và áp dụng ch ng vào ứng dụng c bạn khá qu n
trọng gi p cho ứng dụng c bạn c các hành vi nh mong đ i c ng i d ng


H nh
-

: V ng đ i c

ctivity

onCreate() : N là ph ng thức đ u tiên đ c gọi d ng đ tạo một activity vào
l n đ u tiên activity đ c gọi
onStart(): S đ c gọi khi n hi n hữu v i ng i d ng
onResume(): S đ c gọi khi ng i d ng t ng tác v i các ứng dụng

-

onPause(): Tạm d ng một activity kh ng nh n dữ li u do ng i d ng nh p
vào và kh ng thế thực thi l nh nào Ph ng thức này đ c gọi khi activity hi n
tại đ ng đ c tạm d ng và activity tr c đ đ ng đ c tiếp tục

-

onStop(): Đ c gọi khi một ctivity đã kh ng đ c nh n th y trong th i gi n
dài
onDestroy(): Đ c gọi tr c khi h thống h y activity.

-

3
0



-















onRestart(): Đ
onStop().[3]

c gọi khi ctivity c n đ

c d ng trở lại s u khi b gọi

 Service: thành ph n chạy ẩn trong ndroid t l c chạy cho t i khi thiết b c m t y
t t đi Service s dụng đ upd te dữ li u đ r các c nh báo Notific tion và
kh ng b o gi hi n th cho ng i d ng th y 
V : một chiếc MP ch i các bài nhạc đ c l u trong hàng đ i ng y c khi ng i
s dụng chạy vào ứng dụng khác th ứng dụng c bạn vẫn ph i c n thực hi n các
Services đ tr nh di n các nhi m vụ mà kh ng c một gi o di n ng i d ng cụ th
nào c

 Broadcast Receiver: thành ph n thu nh n các Intent bên ngoài g i t i 
V : bạn viết ch ng tr nh th y thế cho ph n gọi đi n m c đ nh c
đ bạn c n BR đ nh n biết các Intent là các cuộc gọi t i

ndroid khi

 Content Provider: Là một kho dữ li u chi s n cung c p cách truy c p dữ li u
và gi p chi s dữ li u giữ các ứng dụng 
 Intent: là thành ph n tối qu n trọng trong một ứng dụng ndroid n là một đ nh
dạng chuẩn d ng đ đ dữ li u lên đ và khởi tạo một ctivity h y truy n dữ li u
giữ các ctivity th m ch là truy n dữ li u giữ các ứng dụng đ ng thực thi ho c
n c th đ c d ng đ khởi tạo một Service 
V dụ: Khi bạn mở một tr ng web th ph i c một thành ph n nào đ g i dữ li u đi
đ tạo một ctivity hi n th tr ng web đ ch nh là intent
 Notification: đ r các th ng báo khi ứng dụng ndroid đ ng đ c thực thi và
kh ng làm nh h ởng g đến ứng dụng thực thi Th ng th ng các l p tr nh viên
h y d ng dạng th ng báo là To st và lert i log 
 View: View là thành ph n thiết yếu c gi o di n ng i d ng n b o g m các
control nh button r dio button textview checkbox các l yout … trong j v các
thành ph n này đ c gọi là components chứ kh ng ph i view 
Khi một view đ c tạo các l p tr nh viên th ng qu n tâm t i các th ng số c b n
sau:
ác thuộc t nh c n thiết v k ch th c màu s c …
ho ph p view này đ c nh n th y ho c b ẩn
- X l sự ki n khi ng i d ng th o tác v i view này listener


Lƣu ý: ctivity Service Bro dc st Receiver và ontent Provider là nhữngthành
ph n ch nh tạo nên ứng dụng ndroid do đ ch ng ph i đ c kh i báo trong
3

1


ndroidM nifest xml tr

c khi s dụng

2.5. Tạo giao diện chƣơng trình trong Android Studio
2.5.1. Giới thiệu Android Layout
L yout là n i chứ các control lên gi o di n và m i l yout c một cách s p xếp các
control khác nh u v v y v i m i c u tr c gi o di n khác nh u t nên chọn l yout cho
ph h p S u đây là một số l yout c b n cho đ t thiết kế gi o di n
 FrameLayout: Là loại l yout c b n nh t n s đ c d ng nhi u khi t s dụng
v gi o di n nâng c o s u này Khi t k o các control vào th m c đ nh các control
s n m ở v tr trên c ng bên trái ác control khi đ c k o vào fr mel yout s b
đè lên nh u control s u s đè lên control tr c ách duy nh t đ c n các control
vào giữ là s dụng thuộc t nh android:layout_gravity="center". T c th th m
kh o đoạn XML s u đ hi u thêm v fr mel yout 

H nh



: Gi o di n s dụng r meL yout

 LinearLayout: L yout này cho ph p t v gi o di n theo h ng t trái qu ph i
ho c t trên xuống d i Đ x t chi u cho các control trong l yout t s dụng thuộc
t nh orientation.
-


Android:orient tion="horizont l" : Xếp các control t trái s ng ph i theo
hàng
ndroid:orient tion="vertic l" : Xếp các control t trên xuống d i theo cột

3
2


V i những gi o di n c độ phức tạp v ph i th d ng Line rL yout là r t hi u
qu r t thu n ti n trong thiết kế và đi b o tr ứng dụng s u này S u đây là đoạn
XML demo cách s dụng l yout này:
-

Theo hàng

-

H nh
Theo cột

H nh

: Gi o di n Line rL yout theo chi u ng ng

: Gi o di n Line rL yout theo chi u dọc

 RelativeLayout: L yout này cho ph p t s p xếp các control theo v tr t ng đối
giữ các control khác k c control chứ n Khi g p những l yout c độ phức tạp
c o c nhi u gi o di n nh th s dụng Rel tiveL yout là lự chọn tốt nh t Một
3

3


×