TRƯỜNG ĐẠI HỌC MỞ TP.HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
YZYZ
TÌM HIỂU VÀ LẬP TRÌNH
HỆ ĐIỀU HÀNH ANDROID
TRÊN THIẾT BỊ DI ĐỘNG
BÁO CÁO ĐỒ ÁN NGÀNH
SVTH: Lê Quốc Việt
MSSV: 0851010328
Ngành: Tin học
Hướng Chuyên Ngành: Cơ sở dữ liệu
Lớp: TH08B2
Người Hướng Dẫn
GV.Hồ Quang Khải
Tp. Hồ Chí Minh –Tháng 2 năm 2012
Mục Lục
LỜI CÁM ƠN ................................................................................................................................. 4
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ................................................................................. 5
Chương 1.
TỔNG QUAN ......................................................................................................... 6
1.
Giới thiệu ............................................................................................................................ 6
2.
Phương pháp nghiên cứu ................................................................................................... 7
Chương 2.
CƠ SỞ LÝ THUYẾT............................................................................................... 8
1.
Giới thiệu một số hệ điều hành trên thiết bị di động ........................................................... 8
2.
Lịch sử Android ................................................................................................................. 12
3.
Đặc điểm của HĐH Android .............................................................................................. 15
4.
5.
3.1.
Những nét đặc trưng: ............................................................................................... 15
3.2.
Ưu điểm của HĐH Android: ..................................................................................... 15
Cấu trúc hệ thống Android ................................................................................................ 16
4.1.
Applications (tầng ứng dụng) ................................................................................... 16
4.2.
Application framework .............................................................................................. 17
4.3.
Library ...................................................................................................................... 17
4.4.
Android Runtime (môi trường thực thi) ..................................................................... 18
4.5.
Linux kernel (nhân Linux) ......................................................................................... 18
Cài đặt và làm quen môi trường lập trình ANDROID EMULATOR ................................... 19
5.1.
ANDROID EMULATOR............................................................................................ 19
5.2.
Cài đặt và làm quen môi trường lập trình ................................................................. 19
5.2.1.
Công cụ cần có: .............................................................................................. 19
5.2.2.
Cài đặt Android SDK ........................................................................................ 19
5.2.2.1.
Download JDK.............................................................................................. 20
5.2.2.2.
Download eclipse ......................................................................................... 20
5.2.2.3.
Cài đặt ADT plugin ....................................................................................... 20
5.2.2.4.
Cài đặt Android SDK .................................................................................... 23
1
6.
5.2.2.5.
Tạo một điện thoại ảo (AVD) ........................................................................ 26
5.2.2.6.
Tạo một project HelloWold .......................................................................... 27
CHU KỲ ỨNG DỤNG ANDROID ...................................................................................... 28
6.1.
Activity Stack ............................................................................................................ 28
6.2.
Các trạng thái của chu kỳ sống ................................................................................ 29
6.2.1.
Active hoặc running: ......................................................................................... 29
6.2.2.
Paused: ............................................................................................................ 29
6.2.3.
Stopped: ........................................................................................................... 29
6.3.
7.
CÁC THÀNH PHẦN TRONG ỨNG DỤNG ANDROID ..................................................... 30
7.1.
View ......................................................................................................................... 30
7.2.
ViewGroup ............................................................................................................... 31
7.3.
LinearLayout ............................................................................................................ 31
7.4.
FrameLayout ............................................................................................................ 32
7.5.
AbsoluteLayout ........................................................................................................ 33
7.6.
RetaliveLayout ......................................................................................................... 34
7.7.
TableLayout ............................................................................................................. 34
7.8.
Button ....................................................................................................................... 35
7.9.
ImageButton ............................................................................................................. 36
7.10.
ImageView ............................................................................................................... 36
7.11.
ListView .................................................................................................................... 36
7.12.
TextView .................................................................................................................. 37
7.13.
EditText .................................................................................................................... 38
7.14.
CheckBox ................................................................................................................. 38
7.15.
MenuOptions ............................................................................................................ 38
Chương 3.
1.
Các phương thức của chu kỳ sống .......................................................................... 30
DEMO ỨNG DỤNG.............................................................................................. 41
Sơ lược ứng dụng ............................................................................................................ 41
2
2.
Các chức năng của ứng dụng demo ................................................................................ 41
2.1.
Giao diện .................................................................................................................. 41
2.1.1.
Máy tính cơ bản: .............................................................................................. 41
2.1.2.
Máy tính khoa học: ............................................................................................... 43
2.1.3.
History và các công cụ ......................................................................................... 46
2.2.
Cách xử lý: ............................................................................................................... 46
2.2.1.
Tổng quát ......................................................................................................... 46
2.2.2.
Các thuật toán sử dụng: ................................................................................... 47
2.2.2.1.
Chyển biểu thức Infix sang Postfix ............................................................... 47
2.2.2.2.
Tính giá trị của biểu thức hậu tố (postfix) ..................................................... 48
Chương 4.
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ................................................................ 50
1.
Kết luận ............................................................................................................................. 50
2.
Hướng phát triền............................................................................................................... 50
TÀI LIỆU THAM KHẢO ................................................................................................................ 51
SÁCH THAM KHẢO ................................................................................................................. 51
WEBSITE THAM KHẢO........................................................................................................... 51
3
LỜI CÁM ƠN
Để hoàn thành đồ án môn học này, ngoài sự cố gắng của bản thân, tôi đã nhận
được sự giúp đỡ của nhiều cá nhân trong và ngoài trường.
Tôi xin bày tỏ lòng kính trọng và biết ơn sâu sắc tới thầy Hồ Quang Khải, khoa
Công Nghệ Thông Tin, trường Đại học Mở Tp HCM, người đã luôn tận tình hướng dẫn,
động viên và giúp đỡ tôi hoàn thành đồ án môn học này.
Tôi xin bày tỏ lòng biết ơn tới các thầy cô khoa Công Nghệ Thông Tin đã tạo điều
kiện thuận lợi nhất cho tôi trong quá trình học tập, nghiên cứu.
Cuối cùng tôi xin bày tỏ lòng biết ơn sâu sắc tới những người thân trong gia đình,
bạn bè, những người luôn bên tôi, động viên tôi trong suốt quá trình làm đồ án môn học.
4
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
5
Chương 1. TỔNG QUAN
1. Giới thiệu
Ngày nay, xu thế của xã hội thông tin đang chuyển dần sang lĩnh vực công nghệ di
động nói chung và điện thoại di động nói riêng. Minh chứng cho điều đó là sự ra đời của
hai dòng điện thoại smartphone Android và iPhone. Tuy nhiên, hiện nay tiêu điểm gây
chú ý nhất trong xã hội thông tin vẫn là nền tảng Android của Google.
Android ™ cung cấp một bộ đầy đủ các phần mềm cho các thiết bị di động: là một
hệ thống điều hành, middleware và các ứng dụng di động chủ chốt.
Hình. Biểu tượng hệ điều hành Android
Android là hệ điều hành trên điện thoại di động ( và hiện nay là cả trên một số đầu
phát HD, HD Player, TV) phát triển bởi Google và dựa trên nền tảng Linux. Trước đây,
Android được phát triển bởi công ty liên hợp Android (sau đó được Google mua lại vào
năm 2005).
Hiện nay, Android đã thu hút được sự quan tâm của các nhà sản xuất điện thoại di
động lớn trên thế giới và mức tăng trưởng của Android vượt lên dẫn đầu so với iPhone,
Nokia và nhiều hãng khác.
Ở nước ta, Android thực sự là một mảnh đất màu mỡ mà các công ty phần mềm
khai thác. Điều này cũng kéo theo việc cơ hội việc làm cho sinh viên mới ra trường cũng
nhiều hơn. Ngoài ra, Android là một nền tảng mở và được viết bằng ngôn ngữ Java nên
6
đây là một điểm rất thuận lợi để cho nhiều người có thể dễ dàng bắt tay vào nghiên cứu
cũng như dễ dàng tiếp cận công nghệ.
Vì vậy, Mục đích chính khi thực hiện đề tài này là nhằm tiếp cận, nghiên cứu và
khai thác nền tảng phần mềm mở Android để tạo ra một phần mềm có tính thực tiễn cao,
ứng dụng hiệu quả vào cuộc sống.
2. Phương pháp nghiên cứu
1) Sử dụng sử dụng công cụ Android SDK, Eclipse SDK.
2) Thực hiện các demo ứng dụng nhỏ.
Demo ứng dụng máy tính bỏ túi chạy trên thiết bị di động với hệ điều hành Android.
7
Chương 2. CƠ SỞ LÝ THUYẾT
1. Giới thiệu một số hệ điều hành trên thiết bị di động
Hiện nay trên thế giới có rất nhiều hệ điều hành cho điện thoại và các thiết bị di
động.Sau đây mình xin giới thiệu sơ qua về các Hệ điều hành này:
•
Windows phone 7
Windows Phone 7 là một hệ điều hành di động được phát triển bởi Microsoft, và là
sự kế thừa để bởi nền tảng Windows Mobile. Nó ra mắt tại châu Âu, Singapore và Úc vào
ngày 21 Tháng Mười năm 2010, và tại Mỹ và Canada vào ngày 08 Tháng Mười Một năm
2010 , với châu Á có thể trong năm 2011.
8
Với Windows Phone 7, Microsoft cung cấp một Metro giao diện người dùng mới ,
tích hợp các hệ điều hành với các dịch vụ khác của Microsoft, và kế hoạch kiểm soát chặt
chẽ phần cứng mà nó chạy trên nền tảng này.
•
Windows Mobile
Là thế hệ tiền nhiệm của Windows Phone 7
Windows Mobile là hệ điều hành nổi bật giữa đám đông, nền tảng có khả năng bảo
nhập e-mail tốt, làm việc và tương thích với máy tính. Ngoài ra, đây còn là hệ điều hành
có thể chạy rất nhiều các ứng dụng được thiết kế trong một hệ sinh thái của Microsoft.
Tuy nhiên, cũng có thể nhận ra Windows Mobile được ứng dụng trên điện thoại
của nhiều nhà sản xuất khác nhau, và không phải model nào cũng có chất lượng tốt. Giao
diện của máy cũng chưa thực sự thân thiện. Đó là lý do mà những người muốn một chiếc
smartphone đơn giản, thú vị chưa chọn Windows Mobile.
Một trong những khiếm khuyến của hệ điều hành này là màn hình cảm ứng sử
dụng tốt hơn khi dùng bút. Mặc dù, cảm ứng điện trở trên nền tảng này hỗ trợ tốt cho các
ứng dụng như Excel, Word, nhưng cảm ứng điện dung giống iPhone lại hỗ trợ tốt hơn cho
việc dùng tay điều khiển.
Symbian
Mobilephone-Symbian, hai từ trên “ghép” lại đã đem đến một thế hệ điện thoại
thông minhSmartphone. Symbian chính là tâm điểm của sự phát triển cho thị trường di
động. Hệ điều hành (HĐH) này ra đời đã góp phần tạo nên một bức tranh đầy màu sắc
cho thế giới mobile.
Các nhà sản xuất liên tục cho ra những mẫu điện thoại cực kỳ tối tân, mạnh mẽ.
Tuy Symbian chỉ mới được biết đến từ cuối thập niên 90, nhưng tuổi đời phát triển của nó
chẳng thua kém vòng đời phát triển của HĐH Windows mà chúng ta đang sử dụng là
bao. Tháng 6/1998, Symbian ra đời tại London (Anh), tiền thân của sản phẩm này là một
phần mềm của Psion. Sau đó, lần lượt Nokia, Motorola, Ericsson đều mua cổ phần chung
sở hữu sử dụng nền tảng này.
9
Năm 1980, Psion được thành lập bởi David Potter, chủ yếu để viết các phần mềm
và trò chơi cho các thế hệ máy tính ZX đầu tiên. Mục tiêu phát triển các phần mềm trên
hệ máy nhỏ gọn.
Hệ điều hành Symbian là hệ điều hành phổ biến trên các máy điện thoại Nokia và một
số điện thoại SamSung.
•
IOS
IOS là hệ điều hành của Apple. Ban đầu nó được cài tren điện thoại Iphone,sau đó nó
ddauw vào và trở thành hệ điều hành trên iPod Touch, iPad và Apple TV . Apple không
có phép hệ điều hành này chạy trên phần cứng của bên thứ 3.
•
WebOS và Palm Pre
Palm Pre với hệ điều hành WebOS mới được xem là đối thủ nặng ký của iPhone. Nó được
thiết kế dung hòa giữa sự đơn giản và đẹp của di động Apple lẫn các tính năng mạnh mẽ
của Android hay Windows Mobile.
10
Với WebOS, người dùng có thể chạy nhiều ứng dụng đồng thời, các ứng dụng được
sắp xếp tiện sử dụng, dễ tìm kiếm. Nếu iPhone dành cho tất cả mọi người, Windows
Mobile cho ông chủ, Android của lập trình viên, BlackBerry hướng tới người chuộng
thông tin thì WebOS khôn khéo với xu thế mạng xã hội và web 2.0.
•
MeeGo +Maemo +Moblin
Maemo là hệ điều hành của Nokia.Nó được sử dụng đầu tiên trên N900. Tuy nhiên
đây lại không phải là cái mà nhiều người đam mê công nghệ đang mong chờ, cái mà hàng
triệu người đang hướng tới là hệ điều hành MeeGo, sự kết hợp giữa Maemo của Nokia và
Moblin của Intel, hệ điều hành có sự kết hợp của một nhà sản xuất điện thoại lớn nhất thế
giới với một nhà sản xuất chip lớn nhất.
Theo như giới thiệu của Nokia thì MeeGo là hệ điều hành Linux được phát triển dựa
trên hệ điều hành Maemo của hãng và hệ điều hành Moblin của Intel. Maemo là hệ điều
11
hành Nokia đang phát triển cho các thiết bị di động của hãng, còn hệ điều hành do Intel
đỡ đầu Moblin lại hướng tới các máy tính để bàn và laptop.
Android
(sẽ được giới thiệu chi tiết ở phần sau)
2. Lịch sử Android
Android là một hệ điều hành dành cho thiết bị di động như điện thoại, máy tính
bảng và netbooks.
Ban đầu, Android là hệ điều hành cho các thiết bị cầm tay dựa trên lõi Linux do
công ty Android Inc. (California, Mỹ) thiết kế.
Tập đoàn 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 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à
12
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. Các báo cáo từ BBC và The Wall Street Journal chỉ nghĩ rằng Google
muốn xây dựng ứng dụng tìm kiếm trên điện thoại di động. Print and online media đã viết
một số bài viết về những tin đồn rằng Google đã phát triển một chiếc điện thoại mang
thương hiệu Google. Một số suy đoán rằng, Google đã được 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..
Vào tháng 9 năm 2007, InformationWeek thông qua một nghiên cứu báo cáo
Evalueserve rằng Google đã nộp đơn sáng chế nhiều trong lĩnh vực điện thoại di động.
Android có một cộng đồng phát triển ứng dụng rất lớn, hiện có khoảng hơn 70.000
ứng dụng có sẵn cho Android 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 + +.
Andorid được phát triển nhằm cạnh tranh với các hệ điều hành di động khác như
iOS (Apple), BlackBerry OS, Windows Mobile (Microsoft), Symbian (Nokia), Samsung
(Bada), WebOS (Palm)..
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 hệ điều hành di động được bán ra, thứ 2 là BlackBerry
OS 28% và iOS (Apple) xếp thứ 3 với 22%.
Hình. Lịch sử phát triển Android.
13
14
3. Đặc điểm của HĐH Android
3.1. Những nét đặc trưng:
− Application framework: cho phép sử dụng lại và thay thế các thành phần.
− Dalvik virtual machine: tối ưu hóa cho thiết bị di động.
− Intergrated browser: dựa trên cơ chế WebKit mã nguồn mở.
− SQLite: cho bộ nhớ dữ liệu cấu trúc.
− Media support: cho các định dạng audio, video và hình ảnh thông dụng.
− GSM Telephony: (phụ thuộc vào phần cứng).
− Bluetooth, EDGE, 3G, và WiFi (phụ thuộc vào phần cứng).
− Camera, GPS, la bàn, và gia tốc kế: (phụ thuộc vào phần cứng).
− Môi trường phát triển phong phú: bao gồm thiết bị mô phỏng, công cụ cho việc dò
tìm lỗi, bộ nhớ và định hình hiệu năng và một plugin cho Eclipse IDE
3.2.
Ưu điểm của HĐH Android:
Android là một mã nguồn mở và free cho các nhà sản xuất tùy biến, không có các
cấu hình phần cứng và phần mềm cố định. Tuy nhiên bản thân nó hỗ trợ các tính năng
sau:
−
Storage: Sử dụng SQLite, một cơ sở dữ liệu quan hệ nhẹ cho việc lưu trữ dữ liệu
− Connectivity: Hỗ trợ GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth (bao
gồm AD2P và AVRCP), Wifi, LTE và WiMAX
− Messaging: hỗ trợ cả SMS và MMS
− Web browser: Dựa trên mã nguồn mở Webkit, cùng với công nghệ JavaScrip V8 của
Chrome
15
− Media support: Bao gồm hỗ trợ các phương tiện truyền thông sau: H.263, H.264
(Trong 3GP hoặc MP4 container ), MPEG-4 SP, AMR, AMR-WB (3GP container),
AAC, HE-AAC (MP4 hoặc 3GP container), MP3, MIDI, Ogg Vorbis, WAV, JPEG,
PNG, GIF và BMP
− Hardware support: Accelerometer Sensor, Camera, Digital Compass, Proximity
Sensor và GPS
− Multi-touch: Hỗ trợ màn hình cảm ứng đa điểm
− Multi-tasking: Hỗ trợ ứng dụng đa tác vụ
− Flash support: Android 2.3 hỗ trợ Flash 10.1
− Tethering: Hỗ trợ kết nối internet không dây/có dây
4. Cấu trúc hệ thống 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.
4.1.
Applications (tầng ứng dụng)
16
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.
4.2.
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. 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 để các thanh trạng thái, và nhiều, nhiều
hơn nữa.
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ác kiến trúc ứng dụng được thiết kế để đơn giản hóa việc sử dụng lại các
thành phần; bất kỳ ứng dụng có thể xuất bản khả năng của mình và ứng dụng nào khác
sau đó có thể sử dụng những khả năng (có thể hạn chế bảo mật được thực thi bởi khuôn
khổ). 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.
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, tableview, linearlayout,…
• 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, and layout files.
• Một “Notifycation Manager” cho phép tất cả các ứng dụng hiển thị các custom
alerts trong status bar.
Activity Maanager được dùng để quản lý chu trình sống của ứng dụng và điều hướng
các activity.
4.3.
Library
17
Một Android bao gồm một tập hợp các thư viên C/C++ đượ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. Một số các thư viện cơ bản được liệt kê dưới đây:
System C library: a BSD-derived triển khai các thư viện hệ thống ngôn ngữ C chuẩn,
được nhúng vào các thiết bị dựa trên hệ điều hành Linux.
• Media Libraries – Dựa trên PacketVideo's OpenCORE; thư viện này hỗ trợ cho
việc chơi nhạc, quay phim, chụp hình theo các định dạng file MPEG4, H.264, MP3,
AAC, AMR, JPG, and PNG
• Surface Manager – Quản lý truy cập đến các hệ thống con hiển thị cũng như các
lớp đồ họa 2D, 3D từ tầng ứng dụng.
• LibWebCore – Thư viện được dùng để tạo nên thành phần webview trong Android
và có thể nhúng được vào nhiều ứng dụng.
• SGL – Thư viện hỗ trợ đồ hoạ 2D.
• 3D libraries – Thư viện đồ họa 3D.
• FreeType - bitmap and vector font rendering.
• SQLite – Một cơ sở dữ liệu nhỏ được dùng cho các thiết bị cầm tay có bộ nhớ hạn
chế. SQLite không có quan hệ như các cơ sở dữ liệu khác.
4.4.
Android Runtime (môi trường thực thi)
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 lõi 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 VM 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. VM là dựa trên register-based, và
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 VM 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.
4.5.
Linux kernel (nhân Linux)
18
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 quản
lý bộ nhớ, quản lý tiến trình, các tầng network, và các mô hình điều khiển. Kernel 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 phần mềm
stack.
5.
Cài đặt và làm quen môi trường lập trình ANDROID EMULATOR
5.1.
ANDROID EMULATOR
Android SDK và Plugin Eclipse được gọi là một Android Deverloper Tool (ADT).
Các lập trình viên Android sẽ cần phải sử dụng công cụ IDE (Integrated Development
Enveronment) này để phát triển, gỡ lỗi và kiểm thử cho các ứng dụng. Tuy nhiên, các lập
trình viên cũng có thể không cần phải sử dụng IDE mà thay vào đó là sử dụng “command
line” để biên dịch và tất nhiên là vẫn có Emulator như thường.
Android Emulator được trang bị đầy đủ hầu hết các tính năng của một thiết bị thật.
Tuy nhiên, một số đã bị giới hạn như là kết nối qua cổng USB, camera và video, nghe
phone, nguồn điện giả lập và bluetooth.
Android Emulator thực hiện các công việc thông qua một bộ xử lý mã nguồn mở,
công nghệ này được gọi là QEMU (http://bellard.org/qemu/) được phát triển bởi Fabrice Bellard.
5.2.
Cài đặt và làm quen môi trường lập trình
5.2.1.
Công cụ cần có:
− JDK: (java development kit)
− IDE (môi trường phát triển) gồm:
+Eclipse.
+Hoặc NetBean.
− Yêu cầu máy của bạn kết nối mạng trong quá trình cài đặt.
− Máy tính có cài sẵn Java.
5.2.2.
Cài đặt Android SDK
19
- Xem thêm -