Tải bản đầy đủ (.doc) (74 trang)

Tìm hiểu hệ điều hành android và xây dựng ứng dụng tìm kiếm địa điểm đặt máy ATM gần nhất

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 (1.47 MB, 74 trang )

LỜI CẢM ƠN
Em xin chân thành cảm ơn Th.S Trần Thị Ngân, người đã trực tiếp hướng
dẫn, giúp đỡ và tận tình dẫn dắt trong suốt quá trình em thực hiện đồ án tốt
nghiệp này.
Em cũng xin gửi lời cảm ơn tới các thầy, cô giáo trong khoa Công nghệ
thông tin nói riêng, và trong Trường đại học công nghệ thông tin và truyền thông,
Đại học Thái Nguyên nói chung đã truyền đạt cho em những kiến thức, kinh
nghiệm quý báu trong suốt những năm học vừa qua.
Do thời gian hoàn thành đồ án thực tốt nghiệp có hạn cho nên những suy
nghĩ cũng như sự thể hiện đồ án không tránh khỏi có những khiếm khuyết. Em
rất mong nhận được sự động viên và góp ý kiến của các thầy cô và các bạn.
Em xin chân thành cảm ơn!

Thái Nguyên, tháng 6 năm 2012
Sinh viên
Đặng Đình Quý

1


LỜI CAM ĐOAN
Em xin cam đoan toàn bộ đồ án: “Tìm hiểu hệ điều hành Android và xây
dựng ứng dụng tìm kiếm địa điểm đặt máy ATM gần nhất” là do bản thân
tìm hiểu, nghiên cứu, không có sự sao chép nội dung từ các đồ án khác. Tất cả
nội dung hoặc hình ảnh minh họa đều có nguồn gốc xuất xứ rõ ràng từ các tài
liệu tham khảo ở nhiều nguồn khác nhau. Ngoài ra còn có sự góp ý và định
hướng của giảng viên Th.S Trần Thị Ngân.
Em xin cam đoan những lời trên là đúng, mọi thông tin sai lệch em xin
hoàn toàn chịu trách nhiệm trước Hội đồng.

Thái Nguyên, tháng 6 năm 2012.


Sinh viên
Đặng Đình Quý

2


DANH MỤC HÌNH ẢNH

Hình 1.1 Giao diện Android 1.0...........................................................13
Hình 1.2 Tỷ lệ sử dụng các phiên bản Android hiện nay.............................15
Hình 1.3 Tạo thư mục Android ở ổ muốn cài đặt.........................................16
Hình 1.4 Thư mục Android khi đã update....................................................16
Hình 1.5 Cài đặt Eclipse................................................................................17
Hình 1.6 Cài đặt ADT Plupin cho Eclipse....................................................18
Hình 1.7 Kết thúc cài đặt ADT Plugin..........................................................20
Hình 1.8 Cài đặt Android SDK trong Eclipse...............................................21
Hình 1.9 Cập nhập các phiên bản của Android.............................................22
Hình 2.1 Kiến trúc hệ điều hành Android.....................................................23
Hình 2.2 Mô hình quản lý Activity kiểu ngăn xếp........................................32
Hình 2.3 Vòng đời của một Activity.............................................................33
Hình 2.4 Cấu trúc một giao diện ứng dụng Android....................................38
Hình 2.5 ImageButton...................................................................................40
Hình 2.6 Ví dụ về Google Map View...........................................................41
Hình 2.7 Menu Option...................................................................................45
Hình 2.8 Minh hoạ context menu..........................................................46
Hình 2.9 Minh hoạ Quick Search Box..........................................................47
Hình 3.1 Use case cho tác nhân “User”........................................................53
Hình 3.2 Use case cho tác nhân “Admin”.....................................................53
Hình 3.3 Biểu đồ trình tự của Use case “Tim Kiem ATM”.........................55
Hình 3.4 Biểu đồ cộng tác của Use case “Tim Kiem ATM”........................55


3


Hình 3.5 Biểu đồ trình tự của Use case “Cap Nhat”.....................................57
Hình 3.6 Biểu đồ cộng tác của Use case “Cap Nhat”...................................57
Hình 3.7 Biểu đồ trình tự của Use case “Xem Thong Tin Tren Website”...59
Hình 3.8 Biểu đồ cộng tác của Use case “Xem Thong Tin Tren Website”. 59
Hình 3.9 Lớp “SearchActivity”.....................................................................60
Hình 3.10 Lớp “MapsActivity”.....................................................................60
Hình 3.11 Lớp “ATMInfor”..........................................................................61
Hình 3.12 Lớp “ATMInforAdapter”.............................................................61
Hình 3.13 Lớp “Search”................................................................................62
Hình 3.14 Lớp “AsyncSearch”......................................................................62
Hình 3.15 Lớp “HttpUtil”..............................................................................62
Hình 3.16 Sơ đồ lớp của hệ thống.................................................................63
Hình 3.17 Biểu đồ thành phần của hệ thống.................................................63
Hình 3.18 Biểu đồ triển khai của hệ thống....................................................64
Hình 3.19 Dữ liệu cho chương trình..............................................................65
Hình 3.20 Giao diện chính và giao diện GoogleMap của chương trình.......66
Hình 3.21 Giao diện chương trình khi người dùng lựa chọn địa điểm.........67
Hình 3.22 Kết quả khi tìm kiếm với giá trị “Nghe An”................................68
........................................................................................................................68
Hình 3.23 Giao diện khi không có kết quả phù hợp.....................................68
Hình 3.24 Giao diện khi người dùng lựa chọn hiển thị trên GoogleMap.....69

4


MỤC LỤC


LỜI CẢM ƠN..................................................................................................1
LỜI CAM ĐOAN............................................................................................2
DANH MỤC HÌNH ẢNH...............................................................................3
MỤC LỤC........................................................................................................5
LỜI NÓI ĐẦU.................................................................................................8
CHƯƠNG I......................................................................................................9
TỔNG QUAN VỀ HỆ ĐIỀU HÀNH ANDROID VÀ CÀI ĐẶT MÔI
TRƯỜNG PHÁT TRIỂN ỨNG DỤNG..................................................................9
1.1 Giới thiệu Android..........................................................................................................9
1.2 Lịch sử Android............................................................................................................11
1.3 Các phiên bản Android và tình trạng sử dụng hiện nay...............................................12
1.4 Môi trường phát triển ứng dụng..................................................................................16
1.4.1 Cài đặt Android SDK........................................................................................16
1.4.2 Cài đặt Eclipse.................................................................................................17

5


CHƯƠNG II...................................................................................................23
NỀN TẢNG HỆ ĐIỀU HÀNH ANDROID..................................................23
2.1 Kiến trúc Android.........................................................................................................23
2.2 Các thành phần chính của một ứng dụng Android.......................................................25
2.3 Chu kỳ hoạt động của một ứng dụng Android.............................................................31
2.3.1 Hoạt động của ngăn xếp.................................................................................31
2.3.2 Các trạng thái của Activity..............................................................................33
2.3.3 Các phương thức của Activity.........................................................................34
2.3.4 Hoạt động của ứng dụng ...............................................................................35
2.3.5 Các sự kiện trong Activity...............................................................................35
2.4 Các thành phần trong lập trình Android......................................................................36

2.4.1 AndroidManifest.xml......................................................................................36
2.4.2 File R.java........................................................................................................37
2.4.3 View................................................................................................................37
2.4.4 View group.....................................................................................................43
2.4.5 Menu Options.................................................................................................44
2.4.6 ContextMenu..................................................................................................45
2.4.7 Quick Search Box............................................................................................46
2.4.8 Telephony.......................................................................................................47
2.4.9 Network và SQLite trong Android...................................................................48
2.4.10 Sơ lược về JSON - JavaScript Object Notation..............................................48

CHƯƠNG III.................................................................................................52
PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG CHƯƠNG TRÌNH.................52
3.1 Đặc tả bài toán.............................................................................................................52
3.2 Phân tích và thiết kế....................................................................................................52
3.2.1 Tác nhân.........................................................................................................52
3.2.2 Các Use case của hệ thống..............................................................................52
3.2.3 Sơ đồ Use case của hệ thống..........................................................................53

6


3.2.4 Use case “Tim Kiem ATM”..............................................................................54
3.2.5 Use case “Cap Nhat”.......................................................................................56
3.2.6 Use case “Xem Thong Tin Tren Website”........................................................58
3.2.7 Sơ đồ lớp của hệ thống...................................................................................60
3.2.8 Biểu đồ thành phần........................................................................................63
3.2.9 Biểu đồ triển khai...........................................................................................64
3.3 Xây dựng chương trình................................................................................................64


KẾT LUẬN....................................................................................................70
TÀI LIỆU THAM KHẢO.............................................................................71
PHỤ LỤC.......................................................................................................72

7


LỜI NÓI ĐẦU
Trong thời điểm hiện nay, trên thế giới cũng như tại Việt Nam, thị trường
điện thoại di động đang trở nên sôi động hơn bao giờ hết, các thiết bị di động
đang dần thay thế vị trí của máy tính trong công việc cũng như giải trí. Các
smartphone hiện nay được trang bị vi xử lý tốc độ cao, bộ nhớ SDCard lớn cũng
như màn hình cảm ứng đa điểm giúp người dùng dễ thao tác. Các ứng dụng trên
môi trường mạng dần thay thế các ứng dụng chạy trên máy đơn, cục bộ. Với sự
lớn mạnh và phát triển vượt bậc trong những năm gần đây, hệ điều hành Android
đã cho thấy được thế mạnh của mình trong các thiết bị smartphone. Các ứng
dụng, phần mềm phát triển trên Android OS ngày càng nhiều, và mục đích của
các ứng dụng ngày càng đáp ứng được yêu cầu của người dùng.
Cùng với sự phát triển của thị trường điện thoại di động là sự phát triển
mạnh mẽ của xu hướng lập trình phần mềm ứng dụng cho các thiết bị di động.
Phần mềm, ứng dụng cho điện thoại di động hiện nay rất đa dạng và phong phú,
đa số các phần mềm ứng dụng là các loại trò chơi, các chương trình tiện ích như
từ điển, trình soạn thảo, diệt virus... Một trong những ứng dụng hữu ích hiện nay
đó là các chương trình tìm kiếm trên Google Map. Chính vì lý do đó mà em đã
chọn đề tài: “Tìm hiểu hệ điều hành Android và xây dựng ứng dụng tìm
kiếm địa điểm đặt máy ATM gần nhất” với các nội dung chính như sau:
Chương I: Tổng quan về hệ điều hành Android và cài đặt môi trường
phát triển ứng dụng
Chương II: Nền tảng hệ điều hành Android
Chương III: Phân tích thiết kế chương trình


Thái Nguyên, tháng 6 năm 2012
Sinh viên
Đặng Đình Quý
8


CHƯƠNG I
TỔNG QUAN VỀ HỆ ĐIỀU HÀNH ANDROID VÀ CÀI ĐẶT MÔI
TRƯỜNG PHÁT TRIỂN ỨNG DỤNG

1.1 Giới thiệu Android
Android là gì ?
Android là một hệ điều hành kiểu stack cho các thiết bị di động gồm một hệ
điều hành, middleware và các ứng dụng quan trọng. Android SDK cung cấp các
công cụ và giao diện lập trình ứng dụng API cần thiết để bắt đầu phát triển ứng
dụng trên nền tảng Android bằng cách sử dụng ngôn ngữ lập trình Java.
Các tính năng của hệ điều hành Android
- Storage (Lưu trữ): Android sử dụng SQLlite - một CSDL quan hệ nhỏ để
lưu trữ DL có cấu trúc.
- Kết nối (Connectivity): Android hỗ trợ GSM/EDGE, IDEN, CDMA, EVDO, UMTS, Bluetooth (bao gồm A2DP and AVRCP), WiFi, LTE, và WiMAX.
- Tin nhắn: Android hỗ trợ cả tin nhắn dạng SMS (Short Message Services)
và MMS (Multimedia Messaging Service).
- Tích hợp Trình duyệt Web (Web Browser): Dựa trên các bộ Webkit mã
nguồn mở (open Webkit) cùng với GoogleChrome V8 javascript.
- Hỗ trợ truyền trông (Media Support): Android hỗ trợ các định dạng âm
thanh, video phổ biến và các định dạng ảnh như: MPEG4, H.264, MP3, AAC,
AMR, JPG, PNG, GIF…
- Hỗ trợ phần cứng (Hardware Support): Accelerometer Sensor, Camera,
Digital Compass, Proximity Sensor, và GPS.

- Cảm ứng đa chạm (Multil Touch): Màn hình cảm ứng đa điểm giúp người
dùng dễ dàng thao tác.

9


- Đa tác vụ (Multil Task).
- Hỗ trợ Flash: Android 2.3 hỗ trợ Flash 10.1
- Tethering (Chia sẽ kết nối internet tới các thiết bị khác).
Ưu điểm của hệ điều hành Android
Android được cung cấp dưới dạng một phần mềm mã nguồn mở, hoàn toàn
miễn phí. Điều này có nghĩa các nhà sàn xuất thiết bị di động (smartphone,
tablet) có thể sử dụng android và tùy chỉnh theo ý thích.
Nếu như trước đây, mỗi một nhà sản xuất thiết bị di động sử dụng hệ điều
hành của riêng mình, kho ứng dụng cũng chỉ phục vụ cho riêng hệ điều hành đó,
làm giới hạn khả năng lựa chọn linh hoạt của người sử dụng thì nay người sử
dụng có thể lựa chọn sử dụng smartphone với nhiều model, giá cả hợp túi tiền và
điều hay nhất là có thể tận dụng được số lượng lớn ứng dụng dành cho Android
trên Internet mà không cần quan tâm tới hãng sản xuất. Tất cả là nhờ Android.
Đây có thể coi là thế mạnh của Andoird so với iOS của Apple.
Nhược điểm của hệ điều hành Android
Thời lượng sử dụng pin thấp: Hầu hết các thiết bị Android đều có thời
lượng pin thấp và đây là một trong những vấn đề quan trọng mà Google và các
nhà sản xuất thiết bị Android đang chú trọng giải quyết. Một chiếc smartphone
Android điển hình có thời lượng sử dụng với tần suất bình thường trong chỉ 1
ngày, trong khi BlackBerry vẫn có thể hoạt động thêm dù được sử dụng với tần
suất cao trong ngày.
Nhiều ứng dụng vô dụng: Android Martket có thể có một mảng các ứng
dụng miễn phí rộng lớn để tải về, tuy nhiên có khá nhiều ứng dụng vô dụng bởi
Google đã không kiểm tra trước khi cung cấp trên Android Martket. Vì thế, bạn

sẽ phải lướt qua nhiều ứng dụng kém chất lượng trước khi tìm ra một ứng dụng
tốt để đáp ứng tiêu chuẩn của mình.
Giới hạn phần cứng: Từ khi Android chạy được trên hầu hết các điện thoại
smartphone, nhiều mẫu điện thoại không hỗ trợ hết tiềm năng của nó. Đối với

10


một số điện thoại bị giới hạn bởi phần cứng, máy có thể chạy chậm, bị treo và tự
khởi động lại để giải phóng bộ nhớ.
1.2 Lịch sử Android
Ban đầu, Android là hệ điều hành cho các thiết bị cầm tay dựa trên nhân
Linux do công ty Android Inc thiết kế. Công ty này sau đó được Google mua lại
vào năm 2005 và bắt đầu xây dựng Android Platform và gần đây nó trở thành
một trong những phần mềm đứng đầu của liên minh OHA (Open Handset
Alliance: với khoảng 78 thành viên bao gồm cả nhà sản xuất phần cứng, các nhà
phát triển ứng dụng... cho thiết bị di dộng mà dẫn đầu là Google). Andorid được
phát triển nhằm cạnh tranh với các hệ điều hành di động khác của Apple (IOS),
BlackBerry, Microsoft (Windows Phone), Nokia (Symbian), Samsung (Bada),...
Theo thống kê trong quý II năm 2010 tại Mỹ, hệ điều hành Android chiếm thị
phần 33% (cao nhất) trong tổng số các thiết bị di động sử dụng hệ điều hành
được bán ra, thứ 2 là BlackBerry 28% và Apple xếp thứ 3 với 22%.
Android có một cộng đồng phát triển ứng dụng rất lớn, báo cáo mới nhất
cho vào tháng 8/2011 cho thấy có tới hơn 277.000 ứng dụng trên Android Market
và đang liên tục được cập nhật. Ứng dụng được phát triển bằng ngôn ngữ Java
kết hợp với thư viện Java có sẵn của Google. Các nhà phát triển ứng dụng có thể
sử dụng máy tính chạy hệ điều hành Windows hoặc MacOS hoặc Linux kết hợp
với Android SDK để phát triển ứng dụng cho Android. Hệ điều hành Android
bao gồm 12.000.000 dòng mã trong đó có 3.000.000 dòng XML, 2.800.000 dòng
C, 2.100.000 dòng Java, và 1.750.000 dòng C++.

Công ty Android (Inc) được thành lập tại Palo Alto, California, Hoa Kỳ
vào tháng 10 năm 2003 bởi Andy Rubin, Rich Miner, và một số thành viên khác,
với mục đích để phát triển hay tạo ra các thiết bị di động thông minh hơn phục vụ
các mục đích cho lợi ích con người. Nhân viên chính tham gia vào việc thành lập
Android Inc bao gồm Andy Rubin, cũng là đồng sáng lập của Danger Inc, Andy
McFadden là người đã làm việc với Rubin tại WebTV, và Chris White người đã
lãnh đạo việc thiết kế và giao diện của WebTV. Nhân viên quan trọng khác bao

11


gồm Richard Miner, đồng sáng lập của Wildfire Communications Inc và cựu phó
chủ tịch công nghệ và tương lai ở Orange, và tất cả những người trong số họ sử
dụng các kinh nghiệm có được để góp phần vào việc phát triển ngành công
nghiệp không dây của công ty. Bước đầu, hệ điều hành Android chỉ đơn thuần là
phần mềm trên điện thoại di động. Google mua lại Android Inc vào tháng 8 năm
2005 và Android Inc trở thành một công ty con của Google Inc. Các nhân viên
chính của Android Inc, trong đó có Andy Rubin, Rich Miner và Chris White vẫn
tiếp tục làm việc tại công ty này sau khi bị mua lại.
Tại Google, nhóm nghiên cứu dẫn đầu bởi Rubin phát triển một nền tảng
thiết bị di động được hỗ trợ bởi nhân Linux. Google tung ra thị trường các nền
tảng để các nhà sản xuất thiết bị cầm tay và các nhà cung cấp có thể sử dụng linh
hoạt và có khả năng nâng cấp. Google đã lên danh sách hàng loạt các thành phần
phần cứng và các đối tác phần mềm và là dấu hiệu cho thấy Google đang hợp tác
để phát triển một hệ điều hành dành riêng cho di động. Ý định của Google để
tham gia thị trường di động tiếp tục xây dựng thông qua tháng 12 năm 2006.
Google đã xác định thông số kỹ thuật, mẫu thiết kế điện thoại, nhà sản xuất phần
cứng và nhà khai thác mạng.
1.3 Các phiên bản Android và tình trạng sử dụng hiện nay
Những ngày đầu tiên xuất hiện trên thị trường di động thế giới, hệ điều

hành Android của Google đã có những bước tiến nhanh vượt bậc. Hiện có rất
nhiều nhà sản xuất và nhà mạng quan tâm đến hệ điều hành này.
Android 1.0: Phiên bản đầu tiên có mặt trên HTC Dream. Phiên bản này sau
đó nhanh được đưa tới người dùng với những tính năng mới, khả năng lướt web
và nhiều tính năng khác. Dung lượng mỗi trang web bản mobile tối ưu khoảng 40
KB, tiết kiệm chi phí băng thông truy cập qua mạng dữ liệu di động.

12


Hình 1.1 Giao diện Android 1.0
Android 1.1: Google ra phiên bản này để sửa lỗi bảo mật, nhằm hạn chế sự
can thiệp vào cấu trúc ROM của máy.
Android 1.5: Google đưa ra phiên bản 1.5 với tên gọi là Cupcake. Phiên bản
này sẽ tích hợp bàn phím QWERTY ảo, cho phép ghi và phát video. Người dùng
sẽ có thể dễ dàng tải ảnh lên Picasa và video lên Youtube. Hàng loạt model điện
thoại thông minh Android khác cũng sẽ sớm góp mặt trên thị trường. Google sẽ
thử nghiệm phiên bản này trên netbook.
Android 1.6: Phiên bản này sẽ hỗ trợ mạng CDMA và các kích thước màn
hình khác nhau để bạn có thể phát triển nhiều phần mềm hỗ trợ cho nhiều mạng
và thiết bị hơn. Bộ công cụ này còn đi kèm với các tiện ích như APIs : hỗ trợ
nhập liệu nhanh và Quick Search Box – hỗ trợ tìm nhanh trực tiếp từ màn hình
chủ. Theo Google cho biết các ứng dụng, cập nhật cho phiên bản Android cũ vẫn
có thể sử dụng được với các máy chạy android 1.6.
Android 2.0: Phiên bản 2.0 được Google đưa ra sẽ hỗ trợ Multitouch, thêm
chức năng gestures và thêm widget mới, về giao diện thì không có gì khác nhiều

13



với phiên bản 1.5 nhưng phiên bản này ngoài việc hỗ trợ chức năng ở trên ra thì
nó còn hỗ trợ mang CDMA như phiên bản 1.6.
Android 2.1: Lúc mới xuất hiện Android 2.1 chiếm được cảm tình của
người dùng smartphone với tốc độ rất nhanh so với các phiên bản Android trước.
Các smartphone như Motorola Droid, HTC Hero hay Samsung Moment… đều
đã nâng cấp lên Android 2.1 sau khi phiên bản này ra mắt.
Android 2.2: Phiên bản 2.2 có tốc độ nhanh hơn phiên bản 2.1 rất nhiều, tối
ưu hóa toàn bộ hệ thống Android về tốc độ, bộ nhớ và cả hiệu năng. Vì vậy cho
đến tận bây giờ thì phiên bản hệ điều hành Android 2.2 vẫn có tỷ lệ sử dụng lớn
trong số các phiên bản Android hiện nay.
Android 2.3: Phiên bản 2.3 không hẳn là 1 bản cập nhật đủ lớn như người ta
mong đợi. Các cải thiện về bàn phím ảo, quản lý ứng dụng, giao diện không phải
là không tốt. Nhưng hiện tại phiên bản này đang có tỷ lệ sử dụng rất lớn trên thị
trường.
Android 3.0: Google đã xác nhận rằng phiên bản 3.0 chỉ chuyên biệt dành
cho các máy tính bảng, nhưng sau khi phiên bản 3.0 xuất hiện, chính Google lại
mập mờ rằng sẽ có một phiên bản “lai” của Android 3.0 dành cho điện thoại.
Android 3.0 hỗ trợ cho các thiết bị có màn hình lớn hơn và đưa ra nhiều đặc tính
giao diện mới, hỗ trợ xử lý đa nhân và tăng tốc phần cứng đồ họa. Thiết bị đầu
tiên dùng Honeycomb là Motorola Xoom, được bày bán vào 2/2011.
Android 3.1: Phiên bản này chủ yếu tập trung vào các thay đổi ở khả năng
tăng tốc xử lý cùng cập nhật hệ thống các ứng dụng thay vì thay đổi các giao diện
bên ngoài. Tính năng đáng chú ý nhất trong phiên bản cập nhật Android 3.1 là
khả năng hỗ trợ các thiết bị ngoại vi và phụ kiện kết nối qua cổng USB. Người
dùng đơn giản chỉ cần gắn bàn phím, chuột USB,... và sử dụng nó với các máy
tính. Khi bạn gắn một thiết bị USB, phần cứng sẽ tìm kiếm các ứng dụng liên
quan đến thiết bị và mở nó ra, có thể sử dụng chiếc máy tính bảng thành phụ kiện
gắn ngoài như đầu đọc thẻ, thiết bị âm nhạc và ổ đĩa cứng di động.

14



Android 4.0: tên mã Ice Cream Sandwich được Google giới thiệu lần đầu
tiên vào ngày 29/10/2011 như một bản nâng cấp toàn diện cho các phiên bản
trước đó với rất nhiều thay đổi, từ cách sử dụng cho đến giao diện và bổ sung
nhiều tính năng mới. Trong tương lai, Android 4.0 sẽ tiếp tục xuất hiện trên cả
những chiếc điện thoại lẫn máy tính bảng và trên mọi phân khúc sản phẩm chứ
không chỉ nhắm vào người dùng cao cấp. Dưới đây là những thay đổi cơ bản trên
phiên bản Android 4.0 Ice Cream Sandwich:


Giao diện người dùng hoàn toàn mới



Thanh cảnh báo mới



Quản lí đa nhiệm tốt hơn



Việc cắt, dán nội dung đã trở nên đơn giản hơn



Mở khóa bằng khuôn mặt




Chụp ảnh màn hình không cần cài thêm phần mềm

Theo thống kê mới nhất của Google về tình hình sử dụng các phiên bản
Android cho thấy, thị phần hệ điều hành Android phiên bản 2.x đã chiếm đến trên
90%, trong đó Android 2.2 chiếm 20.9%, Android 2.3 chiếm hơn 64%. Android 4.0
mới ra mắt nhưng đã chiếm khoảng 5% thị phần.

Hình 1.2 Tỷ lệ sử dụng các phiên bản Android hiện nay

15


1.4 Môi trường phát triển ứng dụng
1.4.1 Cài đặt Android SDK
Chúng ta cài đặt android SDK trước và tải về từ địa chỉ sau:
/>Bây giờ chúng ta bắt đầu cài đặt bằng cách ta tạo thư mục android ở ổ mình
muốn cài đặt. Thường là ổ C như hình như sau :

Hình 1.3 Tạo thư mục Android ở ổ muốn cài đặt
Sau đó ta download và sau đó giải nén android SDK vừa được tải về từ
trang web trên vào thư mục android mà là tạo ở thư mục ổ C như hình sau :

Hình 1.4 Thư mục Android khi đã update

16


Như vậy android SDK đã được cài đặt.
1.4.2 Cài đặt Eclipse

Download gói eclipse 3.5 tại trang web :
/>Sau đó giải nén tệp vừa cài đặt vào thư mục mà bạn muốn đặt Eclipse, ví
dụ: C:\Eclipse3.5 (nếu bạn dùng nhiều phiên bản eclipse khác nhau thì nên đặt
tên theo kiểu này) hoặc C:\Eclipses (nếu bạn chỉ dùng duy nhất 1 phiên bản
eclipse) - Ổ đĩa không bắt buộc là ổ C. Sau khi đã hoàn tất hướng dẫn trên chúng
ta sẽ tiến hành cài đặt Android plugin theo các bước sau:
Bước 1: Khởi động Eclipse
Bước 2: Chọn Help/Install New Update

Hình 1.5 Cài đặt Eclipse
Bước 3: Chọn nút Add trên hộp thoại để hiện của sổ Add site
Bạn hãy làm theo những gì trên hình dưới đây
Lưu ý: hộp Name có thể đặt tên theo ý của bạn còn hộp Localtion thì bắt
buộc phải là />hoặc là nếu nó không hỗ trợ https
hoặc ta có thể tải ADT để cài đặt

17


Hình 1.6 Cài đặt ADT Plupin cho Eclipse
Bạn nhớ ấn OK để tiếp tục cài đặt nhé !
Bước 4: Đợi eclipse lấy thông số plugin từ địa chỉ trên

18


Bước 5: Bạn check vào Developer Tools sau đó chọn Next để tiếp tục

và đợi eclipse gom các yêu cầu hệ thống và các thư viện liên quan sau đó sẽ
tải chúng về nếu máy của bạn chưa có sẵn.


19


Bước 6: Chọn Next theo hình sau

Bước 7: chấp nhận thỏa thuận sử dụng sau đó chọn Finish

Hình 1.7 Kết thúc cài đặt ADT Plugin

20


Bước 8: Ngồi đợi quá trình cài đặt tự động

Bước cuối cùng là Restart lại Eclipse hoặc chọn Apply để Eclipse cập nhật
những thông số cho Android . Lưu ý: bạn nên restart lại.

Tiếp theo ta cấu hình cho Android SDK trong eclipse :

Hình 1.8 Cài đặt Android SDK trong Eclipse

21


Bạn bấm vào Android và chọn Browse để chọn đường dẫn cho đến thư mục
android đã cài đặt ở phía trên rùi bạn bấm Apply rùi OK để hoàn tất cài đặt như
hình sau :

Hình 1.9 Cập nhập các phiên bản của Android


22


CHƯƠNG II
NỀN TẢNG HỆ ĐIỀU HÀNH ANDROID

2.1 Kiến trúc Android
Mô hình sau thể hiện một cách tổng quát các thành phần của hệ điều hành
Android. Mỗi một phần sẽ được đặc tả một cách chi tiết dưới đây.

Hình 2.1 Kiến trúc hệ điều hành Android
Applications (Tầng ứng dụng)
Android được tích hợp sẵn một số ứng dụng cần thiết cơ bản như: contacts,
browser, camera, phone,… Tất cả các ứng dụng chạy trên hệ điều hành Android
đều được viết bằng Java.

23


Application Framework
Bằng cách cung cấp một nền tảng phát triển mở, Android cung cấp cho các
nhà phát triển khả năng xây dựng các ứng dụng cực kỳ phong phú và sáng tạo.
Các nhà phát triển được tự do tận dụng các thiết bị phần cứng, thông tin địa điểm
truy cập, các dịch vụ chạy nền, thiết lập hệ thống báo động, thêm các thông báo
trên thanh trạng thái, nhiều hơn nữa. Các nhà phát triển có thể truy cập vào các
API cùng một khuôn khổ được sử dụng bởi các ứng dụng lõi. Cơ chế này cho
phép các thành phần tương tự sẽ được thay thế bởi người sử dụng.
Về cơ bản tất cả các ứng dụng là một bộ các dịch vụ và các hệ thống, bao
gồm: Một tập hợp rất nhiều các View có khả năng kế thừa lẫn nhau dùng để thiết

kế phần giao diện ứng dụng như: gridview, listview, webview, tableview,…Một
“Content Provider” cho phép các ứng dụng có thể truy xuất dữ liệu từ các ứng
dụng khác (chẳng hạn như Contacts) hoặc là chia sẻ dữ liệu giữa các ứng dụng
đó. Một “Resource Manager” cung cấp truy xuất tới các tài nguyên không phải là
mã nguồn, chẳng hạn như: localized strings, graphics, và layout files... Một
“Notification Manager” cho phép tất cả các ứng dụng hiển thị các cảnh cáo các
thông tin trên thanh công cụ. Hoạt động người dùng được sử dụng để quản lý chu
trình làm việc của ứng dụng và điều hướng các hoạt động.
Libraries (Thư viện)
Android bao gồm một tập hợp các thư viện C/C++ như: Open GL/ES,
Media Framework, FreeType, Webkit… được sử dụng bởi nhiều thành phần
khác nhau trong hệ thống Android. Điều này được thể hiện thông qua nền tảng
ứng dụng Android.
Android Runtime
Android bao gồm một tập hợp các thư viện cơ bản mà cung cấp hầu hết các
chức năng có sẵn trong các thư viện nguồn của ngôn ngữ lập trình Java. Tất cả
các ứng dụng Android đều chạy trong tiến trình riêng. Máy ảo Dalvik đã được
viết để cho một thiết bị có thể chạy nhiều máy ảo hiệu quả. Các Dalvik thực thi
các tập tin thực thi Dalvik (dex). Định dạng được tối ưu hóa cho bộ nhớ tối thiểu.
24


Chạy các lớp đã được biên dịch bởi một trình biên dịch Java để chuyển đổi thành
các định dạng dex. Các Dalvik dựa vào nhân Linux cho các chức năng cơ bản
như luồng và quản lý bộ nhớ thấp.
Linux Kernel - Nhân của hệ điều hành
Android dựa trên Linux phiên bản 2.6 cho hệ thống dịch vụ cốt lõi như: bảo
mật, bảo mật bộ nhớ, quản lý tiến trình... Nhân của hệ điều hành Linux hoạt động
như một lớp trừu tượng hóa giữa phần cứng và phần còn lại của ngăn xếp phần
mềm.

2.2 Các thành phần chính của một ứng dụng Android
Activity (Hoạt động)
Activity là 1 thành phần của ứng dụng cung cấp một màn hình mà người
dùng có thể tương tác theo thứ tự để thực hiện việc gì đó như: thực hiện cuộc gọi,
chụp ảnh, gửi Email, xem bản đồ… Một của sổ ứng dụng thường lấp đầy màn
hình nhưng cũng có thể nhỏ hơn hoặc nổi trên cùng của màn hình.
Một ứng dụng thường bao gồm 1 tập hợp các Activity được ràng buộc với
nhau. Thông thường trong ứng dụng có một Activity được gọi là Activity chính,
Activity này sẽ được hiện ra khi người sử dùng bắt đầu sử dụng ứng dụng. Một
Activity có thể bắt đầu các Activity khác theo thứ tự thực hiện các hành động
khác nhau. Mỗi lần một Activity mới được bắt đầu thì các Activity trước bị dừng
lại, hệ thống bảo tồn các Activity này trong 1 ngăn xếp (gọi là backstack). Khi
người dùng thao tác xong với Activity hiện tại và nhấn nút BACK thì Activity
này bị huỷ và Activity trước được khôi phục.
Giao diện người dùng cho các Activity được xây dựng bởi kiến trúc phân
cấp các đối tượng View dẫn xuất từ lớp View. Mỗi View chiếm một khoảng
không gian hình chữ nhật bên trong cửa sổ của Activity và có thể đáp ứng được
các tương tác người dùng. Một cấu trúc phân cấp các view được gắn vào Activity
thông qua phương thức: Activity.setContentView().

25


×