Nội dung
Tạo & Run một Android project
Cấu trúc của một project
Các tài nguyên trong project
Các thiết lập cho project (Android Manifest)
Activity, Intent, Intent filter, Permission
hoccungdoanhnghiep.com
Tạo một Android project
Từ Eclipse chọn File > New > Project…
Chọn Android Project, bấm Next
Điền vào tên project
Chọn Build Target là Android 2.2, nhấn Next
Đưa vào package name, nhấn Finish
Create Activity: Khởi tạo activity cho project luôn
hoccungdoanhnghiep.com
Run project
Để chạy một project, ta cần có máy thật hoặc có thể sử dụng
AVD (android virtual device) để thử nghiệm
Cách tạo AVD:
Trên Eclipse, chọn Window > AVD Manager
AVD Manager, chọn New và đưa vào các thông tin để tạo.
Chọn Create AVD để hoàn thành
Nhấp chuột phải vào project, chọn Run As > Android Application
Nếu AVD đã được chạy từ trước, app sẽ được deploy vào AVD
đó. Nếu AVD chưa được chạy, Eclipse sẽ tự động chạy AVD để
deploy app
hoccungdoanhnghiep.com
Cấu trúc của một project
root project -> Project Name
src
assets
bin
res
reslayout
resdrawable
resvalues
Libraries referenced trong project
AndroidManifest.xml
project.properties
hoccungdoanhnghiep.com
Các tài nguyên trong project
AndroidManifest.xml, là XML file chứa các mô tả về ứng dụng,
và các thành phần (activities, services,…) được cung cấp bởi
ứng dụng
Project.properties, file chứa các thuộc tính cài đặt cho quá trình
build ứng dụng
bin/ chứa các class,… đã được build
bin/classes/ chứa các java combined classes
bin/class.dex là file ứng dụng được tạo từ các class đã được
combined
bin/xxx.apk là các app đã được build ra có thể dùng để debug,
test.
libs/ chứa các gói JARs (3rd party) sử dụng trong ứng dụng
hoccungdoanhnghiep.com
Các tài nguyên trong project (2)
src/ chứa source code của ứng dụng
res/ chứa các resource (ảnh, sound, layout,…) cho app
res/drawable/ chứa các file image: PNG, JPG
res/anim/ chứa các khai báo thực hiện việc animation
res/layout/ chứa các khai báo về UI dựa trên XML
res/menu/ chứa các khai báo về menu, dựa trên XML
res/raw/ chứa một số file như mp3, video
res/values/ chứa các file khai báo string, dimensions (các loại
kích cỡ), color, style,…
res/xml/ chứa các file xml khác muốn đi kèm app
assets/ chứa các file tĩnh, bạn muốn triển khai kèm theo app
hoccungdoanhnghiep.com
What is R.java?
Là file được tự động tạo ra, không sửa bằng tay
(manually) file này
Index tất cả các resource sử dụng cho project
Mỗi resource sẽ được tự động gán ID riêng rẽ để
tiện truy cập
Khi truy cập đến resource trong code, R.java bắt
buộc phải được import
hoccungdoanhnghiep.com
Các thiết lập cho project (Android Manifest)
AndroidManifest là file tự động được tạo khi tạo
mới project
<manifest> là thẻ root với các thuộc tính quan
trọng
package - nhằm khai báo gói của ứng dụng
android:versioncode – phiên bản code hiện tại
android:versionname – đặt tên cho phiên bản
android:installLocation – chỉ ra nơi có thể cài đặt
được ứng dụng
uses-sdk android:minSdkVersion="8” nhằm chỉ ra
phiên bản sdk thấp nhất có thể run được ứng dụng (8 tương
ứng với android 2.2)
hoccungdoanhnghiep.com
Các thiết lập cho project (Android Manifest) (2)
<uses-permission> - khai báo các quyền sẽ cần
sử dụng trong ứng dụng
<permission> - khai báo các quyền mà ứng dụng
# có thể gọi đến
hoccungdoanhnghiep.com
Activity
Activity cung cấp 1 giao diện người dùng cho một
screen trong ứng dụng
Activity có đầy đủ vòng đời, và nó có thể được
chuyển sang background, sau đó restore lại đúng
trạng thái trước khi chạy ngầm
Một ứng dụng thường có nhiều activity
Các activity hoạt động theo cơ chế LIFO (last-in-
first-out)
Khi activity thay đổi trạng thái, các callback sẽ
được gọi tương ứng như lifecycle
hoccungdoanhnghiep.com
Activity: Các callback cần chú ý
onCreate: called sau khi activity được khởi tạo. Đây là nơi để:
Create các view trên activity
Bind dữ liệu vào listview, vào text,…
Lấy dữ liệu được pass sang bởi activity khác
onRestart: Sau khi activity đã bị stop, nhưng lại được start lại
onStart: sau khi UI đã hiện lên. onStart luôn được gọi sau khi
onCreate & onRestart được gọi
onPause: gọi khi activity # được resume. Thường là nơi dùng để
lưu lại dữ liệu mới thay đổi, ngừng animation,.. hoặc các hoạt
động làm ảnh hưởng đến CPU. Các hành động này cần làm rất
nhanh.
onResume: gọi ngay trước khi user có thể bắt đầu thao tác với
các thành phần trên màn hình
hoccungdoanhnghiep.com
Activity: Các callback cần chú ý 2
onStop: Khi activity không còn ở trên màn hình
nữa. Xảy ra khi màn hình đó bắt đầu destroy,
hoặc màn hình khác đang resume
onDestroy: gọi khi màn hình sẽ được remove ra
khỏi bộ nhớ.
hoccungdoanhnghiep.com
Permission
Android chạy theo cơ chế phân quyền riêng biệt,
các quyền được phân chia riêng rẽ nhau
Mỗi ứng dụng, có ID riêng biệt sẽ được quản lý
phân quyền khác nhau
Để khai báo xin cấp quyền, sử dụng
AndroidManifest.xml
Chỉ khi người dùng chấp nhận các quyền đó, ứng
dụng mới được cài đặt, chạy, và sử dụng tài
nguyên tương ứng
hoccungdoanhnghiep.com