Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 286 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
286
Dung lượng
10,33 MB
Nội dung
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
VÕ THÀNH NHẬT – PHAN THÀNH TRUNG
TÌM HIỂUHỆĐIỀUHÀNHANDROIDVÀ
XÂY DỰNGỨNGDỤNGMINHHỌA
- PHỤ LỤC -
KHÓA LUẬN TỐT NGHIỆP CỬ NHÂN CNTT
TP.HCM, 2010
2
LỜI GIỚI THIỆU
Android là một hệđiềuhành mã nguồn mở được phát triển dựa trên nhân
Linux. Trong một hai năm trở lại đây, sự phát triển của Android đã có những bước
phát triển mạnh mẽ và dần chiếm cảm tình của người dùng. Do có lợi thế là được
xây dựng theo tiêu chí mở nên việc phát triển ứngdụng trên Android được cho là
khá dễ dàng. Tuy nhiên, nguồn tài liệu để lập trình được ứngdụng chạy trên
Android khá là rời rạc và chưa có sự sắp xếp và tổ chức tốt. Chính vì thế mà cuốn
Phụ lục này được viết ngoài mục đích hỗ trợ cho Khóa luận “Tìm hiểuHệđiều
hành Androidvàxâydựngứngdụngminh họa” còn có mục đích cao hơn đó là
cung cấp những cái nhìn cơ bản nhất, chung nhất giúp cho người đọc có thể dễ dàng
nắm bắt, học hỏi cách thức vận hành cũng như phát triển ứngdụng trên hệđiều
hành nhiều tiềm năng này.
Do thời gian thực hiện đề tài khá ngắn cho nên việc thiếu sót trong khi viết
phần Phụ lục này là một điều không thể tránh khỏi. Nhóm chúng em rất mong được
sự góp ý từ Thầy Cô và các Bạn. Nhóm chúng em xin chân thành cảm ơn.
Tp. Hồ Chí Minh, tháng 03 năm 2010
Nhóm sinh viên thực hiện
Võ Thành Nhật – Phan Thành Trung
3
MỤC LỤC
MỤC LỤC 3
DANH MỤC CÁC HÌNH 9
Phụ lục A Cuộc thăm dò hệđiềuhànhAndroid khuấy động thị trường
smart phone 19
Phụ lục B Những thống kê thú vị về Google Android trong những năm gần
đây (theo iTech.vn ngày 25/01/2010) 24
B.1 Những thống kê từ Google 24
B.2 Những thông tin đáng chú ý 26
B.3 Báo cáo của Admob 26
B.4 Báo cáo của Myxer 28
Phụ lục C Danh sách các công ty trong Hiệp hội các thiết bị cầm tay mở 29
Phụ lục D Các smart phone dùnghệđiềuhànhAndroid 32
Phụ lục E So sánh các hệđiềuhành hiện có trên smart phone 35
Phụ lục F Hai HĐH smartphone Androidvà iPhone tăng trưởng nhanh
nhất 39
Phụ lục G Lập trình trên Android 41
G.1 Tổng quan Android 41
G.1.1 Định nghĩa Android 41
G.1.2 Tính năng và kiến trúc Android 41
G.2 Giới thiệu Java SE JDK, Android SDK , ADT, Eclipse và các bước cài đặt
44
G.2.1 Giới thiệu Java SE JDK, Android SDK, ADT, DDMS, Eclipse và mối
liên hệ giữa chúng 44
G.2.2 Các bước cài đặt để lập trình Android 50
G.2.3 Các điều lưu ý sau khi cài đặt 64
G.3 Bước đầu làm quen với Android qua project HelloNhatTrungApp 67
4
G.3.1 Các bước tạo project HelloNhatTrungApp 67
G.3.2 Cấu trúc của một project Android 85
G.4 Làm quen với các khung nhìn trên Eclipse qua cái nhìn trên Android
project 87
G.4.1 Khung nhìn Java 87
G.4.2 Khung nhìn DDMS 99
G.4.3 Tìmhiểu Debug 104
G.5 Làm quen với nền tảng ứngdụngAndroid 108
G.5.1 Các thành phần ứngdụng 109
G.5.2 Activities và Tasks 114
G.5.3 Tiến trình và luồng 115
G.5.4 Vòng đời các thành phần ứngdụngAndroid 115
G.6 Làm quen với các công cụ hỗ trợ sẵn có của Android SDK 125
G.6.1 Android Development Tools Plugin (ADT) 125
G.6.2 Dalvik Debug Monitor Service (DDMS) 126
G.6.3 Hierarchy Viewer 128
G.6.4 Draw 9-patch 130
G.6.5 Android Debug Bridge (ADB) 134
G.6.6 Các công cụ hỗ trợ khác 136
Phụ lục H Các vấn đề cơ bản trong lập trình Android 137
H.1 Các vấn đề và khái niệm cơ bản trong lập trình giao diện 137
H.1.1 Giới thiệu lập trình giao diện trên Androidvà các tính năng của nó 137
H.1.2 Các từ khóa thường gặp trong lập trình giao diện 141
H.1.3 Các đơn vị tính trên giao diện 142
H.1.4 Các thuộc tính thường gặp trên các View 143
H.1.5 Tổng quát các View dưới cái nhìn hướng đối tượng 144
H.1.6 Cách thức xâydựngvà thiết kế giao diện 149
H.1.7 Cách thao tác control trên Java code 152
H.2 Lập trình với giao diện cơ bản 153
5
H.2.1 Các điều khiển chứa điều khiển khác (layout) 153
H.2.2 Các điều khiển thông dụng 164
H.3 Các chú ý khi lập trình giao diện 166
Phụ lục I Lập trình theo từng chủ đề 167
I.1 Lập trình giao diện tùy biến với Adapter 167
I.1.1 Giới thiệu sơ lược BaseAdapter và các lớp con của nó 167
I.1.2 Dùng Adapter trên Spinner 168
I.1.3 Dùng Adapter trên Gallery 170
I.1.4 Dùng Adapter trên ListView cơ bản 173
I.1.5 Dùng Adapter trên ListView nâng cao 175
I.1.6 Dùng Adapter trên GridView cơ bản 177
I.1.7 Dùng Adapter trên GridView nâng cao 179
I.1.8 Kinh nghiệm lập trình với Adapter 182
I.2 Lập trình với hoạt cảnh chuyển động (Animation) 183
I.2.1 Giới thiệu lập trình với Animation 183
I.2.2 Lập trình với TweenAnimation 184
I.2.3 Lập trình với FrameByFrameAnimation 189
I.3 Lập trình với Media 191
I.3.1 Giới thiệu 191
I.3.2 Lập trình phát âm thanh trên Android 193
I.3.3 Lập trình phát Video trên Android 193
I.3.4 Nhận xét 194
I.4 Lập trình với thao tác Telephony 195
I.4.1 Giới thiệu 195
I.4.2 Thực hiện gọi điện thoại tới một số cho trước 195
I.4.3 Thực hiện gửi tin nhắn SMS 197
I.4.4 Thực hiện chức năng rung điện thoại 198
I.5 Lập trình với luồng (Thread) 198
I.5.1 Giới thiệu luồng 198
6
I.5.2 Các đặc tính và cách thức vận hành luồng 199
I.5.3 Lập trình luồng 200
I.6 Lập trình với thực đơn (Menu) 202
I.6.1 Giới thiệu thực đơn 202
I.6.2 Cách thức lập trình 203
I.6.3 Nhận xét 212
I.7 Lập trình với kiểu chữ (Font) 212
I.7.1 Giới thiệu 212
I.7.2 Cách lập trình 213
I.7.3 Nhận xét 214
I.8 Lập trình với khung thoại (Dialog) 214
I.8.1 Giới thiệu 214
I.8.2 Cách thức lập trình 215
I.9 Lập trình với nhập xuất tập tin 220
I.9.1 Giới thiệu 220
I.9.2 Preferences 221
I.9.3 Files 222
I.9.4 Databases 226
I.9.5 Network 231
I.10 Lập trình với MapView 233
I.10.1 Giới thiệu 233
I.10.2 Cách thức lập trình 235
I.10.3 Nhận xét 239
I.11 Lập trình thao tác WebKit 239
I.11.1 Giới thiệu 239
I.11.2 Cách thức lập trình 240
I.11.3 Nhận xét 241
I.12 Lập trình với các widget khác 241
I.12.1 Widget Date/Time 241
7
I.12.2 Widget Tab 242
Phụ lục J Lập trình với EndlessList 245
J.1 Giới thiệu 245
J.2 Cách thức tạo EndlessList 246
J.2.1 Cách thức vận hành của EndlessList: 246
J.2.2 Cách thức lập trình tạo EndlessList 247
J.3 Nhận xét 250
Phụ lục K Cấu trúc và ý nghĩa các thành phần của một project Android 251
Phụ lục L Hướng dẫn sử dụng, thao tác chính trên chương trình
eSaleShopping 253
L.1 Sơ đồ liên kết các màn hình chức năng trong ứngdụng eSaleShopping . 253
L.2 Giới thiệu chức năng của màn hình chính 254
L.2.1 Các chức năng trên màn hình chính 254
L.2.2 Thực đơn (menu) chức năng của màn hình chính 255
L.3 Thao tác trên màn hình chụp mã vạch 256
L.3.1 Sử dụng chức năng chụp mã vạch 256
L.3.2 Các chức năng thực hiện sau khi chụp được mã vạch hàng hóa 259
L.4 Thao tác trên màn hình tìm theo danh mục hàng hóa 262
L.5 Thao tác trên màn hình tìm theo chuỗi 264
L.6 Thao tác trên màn hình tìm theo hệ thống siêu thị 265
L.6.1 Thao tác chính 265
L.6.2 Thao tác trên các chức năng trên một siêu thị được chọn 267
L.6.3 Tìm hàng hóa siêu thị theo chuỗi 269
L.6.4 Tìm hàng hóa siêu thị theo mã vạch 269
L.6.5 Tìm hàng hóa siêu thị theo danh mục 270
L.7 Thao tác quản lý danh sách hàng hóa ưa thích 270
L.8 Thao tác quản lý danh sách hàng hóa cần mua 271
L.8.1 Thao tác thêm hàng cần mua 272
8
L.8.2 Thao tác xóa hàng cần mua 272
L.8.3 Thao tác gửi tin nhắn hàng cần mua 273
Phụ lục M Các cấu trúc, mã lệnh, ứngdụng tham khảo được sử dụng
trong ứngdụng eSaleShopping 275
M.1 Bộ gõ Tiếng Việt IME 275
M.2 Chụp mã vạch hàng hóa (barcode) 276
M.3 Ứngdụng bản đồ và vị trí 279
M.3.1 Các tham số Google Map hỗ trợ tìm kiếm đường đi 279
M.3.2 Thể hiện đường đi trên bản đồ Google Map 280
M.3.3 Cách thức tìm vị trí thiết bị thông qua GPS hoặc mạng 281
M.4 Ứngdụng EndlessList 282
M.4.1 Giải pháp của M.Murphy 282
M.4.2 Giải pháp của Evan Charlton 283
M.5 Mã nguồn android-misc-widgets 284
M.5.1 Hiệuứng hoạt cảnh 285
M.5.2 Các widget mới 285
9
DANH MỤC CÁC HÌNH
Hình phụ lục 1 HệĐiềuHànhAndroid Của Google - Phần trăm người dự định mua
smart phone dùnghệđiềuhànhAndroid trong vòng 90 ngày tới (theo
ChangeWave) 19
Hình phụ lục 2 Ứng Tỉ lệ số người dùng dự định mua smart phone dùnghệđiều
hành giữa đợt thăm dò 09/2009 và 12/2009 (theo ChangeWave) 20
Hình phụ lục 3 Tỉ lệ người dùng smart phone trong đợt thăm dò tháng 12/2009
(theo ChangeWave) 21
Hình phụ lục 4 Biểu đồ số người mua smart phone trong vòng 90 ngày tới thì nhà
sản xuất smart phone nào dự định mua giữa đợt thăm dò tháng 9/2009 và
12/2009 (theo ChangeWave) 22
Hình phụ lục 5 Mức Độ Hài Lòng Dựa Trên HệĐiềuHành Trong Đợt Thăm Dò
Tháng 12/2009 (theo ChangeWave) 23
Hình phụ lục 6 Dữ liệu thống kê trong 2 tuần cuối từ ngày 4/1/2010 25
Hình phụ lục 7 Thống kê so sánh ba phiên bản hệđiềuAndroid giữa hai thời điểm
17/12/2009 và 04/01/2010 25
Hình phụ lục 8 Thị phần các hệđiềuhành trên smart phone theo từng khu vực 26
Hình phụ lục 9 Thị phần hệđiềuhành trên toàn thế giới 27
Hình phụ lục 10 Biểu đồ cạnh tranh giữa iPhone vàAndroid từ 01/01/2009 đến
01/12/2009 28
Hình phụ lục 11 Kiến trúc Android theo từng tầng (nguồn developer.Android.com)
42
Hình phụ lục 12 Trang web tải về Java SE trên Windows 46
Hình phụ lục 13 Mục Eclipse cần tải về để làm IDE cho phát triển Android 47
Hình phụ lục 14 Mục cần tải về ADT (nguồn developer.Android.com) 49
Hình phụ lục 15 Biểu diễn trình tự và quan hệ giữa Java SE, Android SDK, ADT và
Eclipse. 49
Hình phụ lục 16 Mục Android SDK cần tải về để dùng trên Windows 50
Hình phụ lục 17 Lựa chọn mục Java SE (JDK) 6 51
10
Hình phụ lục 18 Lựa chọn tải về bản JDK mới nhất 51
Hình phụ lục 19 Chọn lựa phiên bản JDK phù hợp với máy trạm 52
Hình phụ lục 20 Lựa chọn nơi lưu trữ tập tin JDK về máy 52
Hình phụ lục 21 Chấp nhận điều khoản sử dụng JDK và tiến hành cài đặt 53
Hình phụ lục 22 Lựa chọn đường dẫn để cài đặt bộ JDK 53
Hình phụ lục 23 Mục lựa chọn bản Eclipse phù hợp với hệ thống 54
Hình phụ lục 24 Lựa chọn thư mục lưu trữ bộ Eclipse 54
Hình phụ lục 25 Giải nén bộ IDE Eclipse 55
Hình phụ lục 26 Chọn Work space để làm việc khi khởi động Eclipse 55
Hình phụ lục 27 Mục chọn để cập nhật thêm phần mềm mới vào Eclipse 56
Hình phụ lục 28 Chọn đường dẫn để đồng bộ bản ADT từ Google 56
Hình phụ lục 20 Lựa chọn các plug-in cần cài đặt vào Eclipse 57
Hình phụ lục 30 Lựa chọn tập tin ADT.zip để cập nhật vào Eclipse 58
Hình phụ lục 31 Chọn đường dẫn tới tập tin ADT.zip 58
Hình phụ lục 32 Chọn cập nhật đường dẫn tới bộ Android SDK trên Eclipse 59
Hình phụ lục 33 Trình đơn quản lý các bộ Android SDK và máy ảo 60
Hình phụ lục 34 Mục quản lý các thiết bị Android ảo 61
Hình phụ lục 35 Mục cập nhật các gói hỗ trợ lập trình Android mới nhất từ Google
61
Hình phụ lục 36 Hình minhhọa cho việc cập nhật một gói hỗ trợ mới nhất từ
Google 62
Hình phụ lục 37 Mục tạo mới một diện thoại Android ảo 63
Hình phụ lục 38 Thư mục chứa bộ Android SDK 65
Hình phụ lục 39 Các thư mục bên trong bộ Android SDK 66
Hình phụ lục 40 Mục tạo mới một project Android 67
Hình phụ lục 41 Các thông số cần quan tâm khi thiết lập một project Android mới
68
Hình phụ lục 42 Khung ứngdụng của HelloNhatTrungApp 71
Hình phụ lục 43 Màn hình thiết kế giao diện cho Android 72
[...]... dùnghệđiềuhànhAndroid trong vòng 90 ngày tới HệĐiềuHànhAndroid Của Google Phần trăm người dự định mua smartphone dùnghệđiềuhànhAndroid trong vòng 90 ngày tới 25% 21% 20% 15% 10% 5% 0% 1% 2% 2% 4% 4% 6% 3% Phần trăm người dự định mua smartphone dùnghệđiềuhànhAndroid trong vòng 90 ngày tới Hình phụ lục 1 Hệ ĐiềuHành Android Của Google - Phần trăm người dự định mua smart phone dùnghệ điều. .. bản Android Market mới, hay ứngdụng Goggles … (các ứngdụng này đòi hỏi phải sử dụng phiên bản Android 1.6 trở lên) 21.1% các di động hỗ trợ cảm ứng đa chạm tích hợp sẵn vào hệ điềuhành (Android 2.x) B.3 Báo cáo của Admob Công ty quảng cáo trên di động Admob vừa mới đưa ra các thống kê mới nhất về thị phần các hệ điềuhành di động trên các dòng smart phone trong quý 4/2009 Theo thị phần hệ điều hành. .. tháng 01 năm 2010 Hệ điềuhành Android của Google ra đời cách đây hơn một năm và nó được mong đợi là hệđiềuhành có thể thay đổi được thị trường smart phone trên toàn thế giới Theo đợt thăm dò 4068 khách hàng từ ngày 9 đến ngày 14 tháng 12 của ChangeWave với chủ đề hệđiềuhànhAndroid ảnh hưởng đến thị trường smart phone, thì trong thời điểm đó có 4% nói là họ đang dùnghệđiềuhànhAndroid có nghĩa... Hình phụ lục 55 Màn hình chạy một ứngdụngAndroid từ Eclipse 82 Hình phụ lục 56 Màn hình minhhọa trạng thái chạy cũa một ứngdụng 83 Hình phụ lục 57 Màn hình đợi ứngdụng xử lý xong 83 Hình phụ lục 58 Màn hình thao tác xử dụngứngdụng HelloNhatTrungApp 84 Hình phụ lục 59 Màn hình giao diện chính của Android 2.1 84 Hình phụ lục 60 câu trúc ứngdụngAndroid trên Eclipse 85 Hình... lục 124 Hình minhhọa cho một Absolute layout 162 Hình phụ lục 125 Hình minhhọa Relative Layout 163 Hình phụ lục 126 Hình minhhọa các điều khiển khác 165 Hình phụ lục 127 Hình minhhọa các điều khiển khác 165 Hình phụ lục 128 Hình minhhọa cho một Spinner trong Android 168 Hình phụ lục 129 Danh sách lựa chọn khi nhấn vào Spinner 169 Hình phụ lục 130 Hình minhhọa việc tạo... widget 241 Hình phụ lục 174 Hình minhhọa Time widget 241 Hình phụ lục 175 Hình minhhọa giao diện dạng Tab trong Android 242 Hình phụ lục 176 Mã XML minhhọa cho việc tạo một khung ứngdụng Tab đơn giản 243 Hình phụ lục 177 Hình minhhọa cấu trúc của một Tab widget 243 Hình phụ lục 178 Hình minhhọa cho một EndlessList được áp dụng vào eSaleShopping 247 Hình... từng khu vực, Android là hệđiềuhành phổ biến tại khu vực Bắc Mỹ với 43% và Tây Âu với 8% Về thị phần smart phone tính trên toàn thế giới, Android đạt được 16%, ứng ở vị trí thứ 3, sau iPhone với 51% và Symbian với 21% Hình phụ lục 8 Thị phần các hệđiềuhành trên smart phone theo từng khu vực 26 Hình phụ lục 9 Thị phần hệđiềuhành trên toàn thế giới Tại thị trường Mỹ, thị phần của Android đang tăng... Hình minhhọa Gallery 171 Hình phụ lục 132 Hình ảnh minhhọa của một ListView 174 Hình phụ lục 133 Minhhọa việc tạo một List View 174 Hình phụ lục 134 Hình minhhọa một Custom ListView 175 Hình phụ lục 135 Hình minhhọa cách thức làm một custom row cho một ListView 176 Hình phụ lục 136 Hình minhhọa cách thức làm một ListView 176 Hình phụ lục 137 Hình ảnh minh họa. .. bản Android 1.5 vàAndroid 2.x đều tăng, trong khi các thiết bị sử dụngAndroid 1.6 lại giảm, nhưng trong khoảng thời gian này, không có di động nào cập nhật lên các nền tảng Android 2.x Điều này có thể lý giải là số lượng bán ra của các dòng di động sử dụngAndroid 1.5 vàAndroid 2.x tăng cao, kéo theo thị phần của 2 nền tảng này được tăng thêm Hình phụ lục 7 Thống kê so sánh ba phiên bản hệđiều Android. .. 117Hình minhhọa tạo giao diện bằng Java 149 Hình phụ lục 118 Cấu trúc xâydựng giao diện bằng XML 150 Hình phụ lục 119 Hình minhhọa việc quản lý các View thông qua định danh ID 152 Hình phụ lục 120 Hình minhhọa một Linear Layout 154 Hình phụ lục 121 Hình minhhọa cho thuộc Layout_weight 157 Hình phụ lục 122 Hình minhhọa cho một Table Layout 158 Hình phụ lục 123 Hình minhhọa . CÔNG NGHỆ THÔNG TIN
VÕ THÀNH NHẬT – PHAN THÀNH TRUNG
TÌM HIỂU HỆ ĐIỀU HÀNH ANDROID VÀ
XÂY DỰNG ỨNG DỤNG MINH HỌA
- PHỤ LỤC -
KHÓA LUẬN. này được viết ngoài mục đích hỗ trợ cho Khóa luận Tìm hiểu Hệ điều
hành Android và xây dựng ứng dụng minh họa còn có mục đích cao hơn đó là
cung cấp