TÌM HI U V Application & Activity
Ch ng 8
levanhanhvn@gmail.com
Trang 2N I DUNG
1 Các thành ph n c b n c a ng d ng Android
2 C u trúc m t Project
3 Application & Activity
Trang 51.2 Service
• Là thành ph n ch y bên d i c a ng d ng
• C p nh t ngu n d li u cho các Activity hi n th
• Th ng đ c s d ng trong các ti n trình không yêu
c u Activity ph i ho t đ ng
1 CÁC THÀNH PH N C B N C A NG D NG ANDROID
Trang 61.3 Content Provider
• N i qu n lý và chia s c s d li u c a ng d ng
• Th ng đ c dùng đ chia s d li u gi a các ng
d ng v i nhau
• Android cung c p m t vài Content Provider có s n
nh : media, contact details…
1 CÁC THÀNH PH N C B N C A NG D NG ANDROID
Trang 101.7 Notification
• Cho phép g i các thông báo đ n ng i dùng mà
không c n th hi n Activity.
1 CÁC THÀNH PH N C B N C A NG D NG ANDROID
Trang 11• Folder res : ch a các resource dùng trong
ng d ng (thông qua ID)
• Folder assets ch a các resource file mà
ng d ng c n dùng (d i d ng file)
• Ngoài ra còn có file th vi n.
Trang 12Drawable-o Có th t t o thêm m t th m c cùng c p tên là Drawable, ch a các
t p tin do ng i l p trình kéo th
tr c ti p vào trong này Khi ch ng trình load các Resource s t đ ng vào đây l y.
o Tùy thu c vào đ phân gi i màn hình mà ch ng trình t đ ng vào các folder -hdpi, -ldbpi, -xdpi đ l y đúng d li u.
Trang 132 C u trúc m t Project
2.1 Folders:
• Folder res có các folder con:
– layout: ch a các file xml đthi t k giao di n
Trang 142 C u trúc m t Project
2.2 Các file c n quan tâm:
– MainActivity.java : class ch a toàn b source code
– activity_main.xml : file xác đ nh n i dung giao di n (layout)
– AndroidManifest.xml : file khai báo thông tin v ng d ng v i h
th ng
Trang 152.3 Manifest file
2.3.1 Vai trò c a t p tin Manifest
• M i ng d ng có m t file Manifest
• Mô t các thành ph n (Activity, Service, Content
Provider, Broadcast Receiver) và cách các thành
ph n này liên k t v i nhau C th là ng d ng
g m nh ng Activity nào, có service nào…, xin cácquy n gì, phiên b n bao nhiêu, dùng t SDK phiên
b n nào, …
• Ch đ nh các chính sách b o m t, đ n v ki m
ch ng, các yêu c u v n n t ng và ph n c ng
2 C u trúc m t Project
Trang 162.3 Manifest file
2.3.1 Vai trò c a t p tin Manifest
• Các Activity mu n đ c tri u g i trong ng d ng
ph i đ c khai báo trong file này
• n đ nh Activity đ u tiên đ c th c thi khi ch y
ng d ng Khi đó s d ng tag <intent-filter> (các
Activity khác không c n khai báo
Trang 172.3 Manifest file
2 C u trúc m t Project
2.3.2 C u trúc c a t p tin Manifest
Trang 183 APPLICATION & ACTIVITY
3.1 Applications
M i m t Android Project khi biên d ch thành
công s đ c đóng gói thành t p tin .apk , t p tin
.apk đ c g i là m t Application (m t ng d ng c
ng d ng nh n tin liên l c gi a nhà tr ng và ph
Trang 193 APPLICATION & ACTIVITY
3.2 Activity
• M i Activity đ i di n cho m t màn hình ng d ng L p Activity
đ m nh n vi c t o ra m t c a s (window) đ ng i l p trình đ t lên đó m t giao di n (UI).
• Thông th ng trong m t ng d ng (Application) s có m t ho c nhi u Activity.
• M t Activity có th mang nhi u d ng khác nhau:
– C a s toàn màn hình (full screen window)
– C a s floating (v i windowsIsFloating)
– C a s n m l ng bên trong 1 activity khác (v i ActivityGroup).
Trang 203 APPLICATION & ACTIVITY
3.2 Activity
• T o m i m t Activity b ng cách t o l p m i m r ng t
l p Activity c a Android
Trang 213 APPLICATION & ACTIVITY
3.2 Activity
bu c Activity đó ph i đ c khai báo trong file
AndroidManifest.xml v i th <activity>.
Ví d :
Trang 223 APPLICATION & ACTIVITY
3.3. C ch qu n lý các Activity: (stack Activity)
Các Activity đ c qu n lý trong m t stack ch a Activity:
• Khi ng d ng đ c m lên thì Activity chính s đ c t o ra và
đ c thêm vào stack.
• Khi m t activity m i đ c kh i t o, nó s đ c đ t lên trên cùng
c a stack Lúc này ch có duy nh t Activity trên cùng là hi n th
n i dung đ n ng i dùng T t c các Activity còn l i đ u chuy n
v tr ng thái d ng ho t đ ng.
• Khi m t Activity b đóng (ng i dung nh n nút “Back”) Activity
đó s b lo i kh i stack Lúc này Activity n m li n d i s chuy n
t tr ng thái t m d ng sang tr ng thái ho t đ ng.
Main ActivityActivity 2
Khi nút “Home” đ c nh n không th
dùng nút “Back” đ quay l i màn hình c
đ c.
Trang 233 APPLICATION & ACTIVITY
3.4 Các tr ng thái c a Activity
• Running (đang kích ho t): Khi màn hình là
Foreground (Activity n m trên cùng ng d ng và cho
Trang 243 APPLICATION & ACTIVITY
Trang 253 APPLICATION & ACTIVITY
Trang 263 APPLICATION & ACTIVITY
ho c m t Activity không chi m
toàn b màn hình thi t b
(non-full-sized))
Trang 273 APPLICATION & ACTIVITY
3.5 Vòng đ i c a Activity (tt)
(Foreground Lifetime hayActive Lifetime): Di n ra t
dài t i khi g i onPause().
vòng đ i này, activity
n m trên m i activity khác và
t ng tác đ c v i ng i dùng
M t activity có th liên t c thay
đ i gi a hai tr ng thái Paused và
Resumed (VD: Ch ng h n khithi t b sleep)
Trang 283 APPLICATION & ACTIVITY
3.6. Th c thi Life Cycle c a Activity
Trang 293 APPLICATION & ACTIVITY
• V n d ng:
– Khi quay tr v Activity c thì sau khi th c hi n xong các hàm
c n thi t, ch c ch n ng d ng ph i g i hàm onResume đ
ph c h i l i tr ng thái ng d ng – Nh v y ta th ng l u l i tr ng thái c a ng d ng trong s
onResume
Trang 303 APPLICATION & ACTIVITY
Trang 313 APPLICATION & ACTIVITY
3.8 Hàm
• Hàm finish(): t t màn hình hi n t i.
Trang 323.9. Quy n u tiên c a ng d ng
• Android qu n lý các ng d ng d a trên đ u tiên
• N u hai ng d ng có cùng tr ng thái thì ng d ng
• N u ng d ng đang ch y m t Service hay Content