Tải bản đầy đủ (.pdf) (47 trang)

Tìm hiểu hệ điều hành android và xây dựng phần mềm chát nội bộ

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.55 MB, 47 trang )

Đồ án tốt nghiệp Đại học

TRƯỜNG ĐẠI HỌC VINH

KHOA CÔNG NGHỆ THÔNG TIN
--------------------------

PHAN VIỆT ĐỨC

BÁO CÁO
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
Tên đồ án:

TÌM HIỂU HỆ ĐIỀU HÀNH ANDROID VÀ XÂY
DỰNG PHẦN MỀM CHÁT NỘI BỘ

Nghệ An, tháng 01 năm 2016

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

1


Đồ án tốt nghiệp Đại học
TRƯỜNG ĐẠI HỌC VINH

KHOA CÔNG NGHỆ THÔNG TIN
--------------------------

BÁO CÁO
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC



Tên đồ án:

TÌM HIỂU HỆ ĐIỀU HÀNH ANDROID VÀ XÂY
DỰNG PHẦN MỀM CHÁT NỘI BỘ

Sinh viên thực hiện:

Phan Việt Đức – Mã sinh viên : 1151073744
Lớp: 52K2 - CNTT

Giáo viên hướng dẫn: ThS. Lê Văn Thành

Nghệ An, tháng 01 năm 2016
Phan Việt Đức– Lớp 52K2 - Khoa CNTT

2


Đồ án tốt nghiệp Đại học

LỜI CẢM ƠN

Em xin ch n th nh cảm ơn các thầy giáo cô giáo trong khoa C ng ngh th ng tin
- tr ờng Đại học Vinh đã tận tình giảng dạy và trang bị cho em r t nhiều kiến thức bổ
ích trong các năm học vừa qua, góp phần r t lớn vào vi c tìm hiểu đồ án này. Em cũng
xin đ ợc gửi lời cảm ơn ch n th nh nh t đến thầy giáo ThS. Lê Văn Th nh ng ời đã
ln tận tình chỉ bảo v h ớng dẫn em trong suốt thời gian qua.
Tuy nhiên, do thực hi n trong một thời gian ngắn cũng nh kiến thức của em cịn
có nhiều hạn chế nên trong đồ án cịn có nhiều sai sót. Em r t mong nhận đ ợc sự

quan tâm góp ý của quý thầy cô và các bạn.
Xin chân thành cảm ơn!

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

3


Đồ án tốt nghiệp Đại học

LỜI MỞ ĐẦU

Ng y nay chúng ta đang sống trong kỷ nguyên của khoa học công ngh đặc
bi t là Công ngh thông tin. Thời n y ng ời ta dùng đi n thoại, máy tính bảng
để l ớt web, cht mọi lúc mọi nơi chính vì thế mà phần mềm chat cũng l một
yếu tố không thể thiếu. 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 hi n nay r t đa dạng và
phong phú trên các h điều h nh di động cũng đang phát triển mạnh mẽ v đang
thay đổi từng ngày. Các h điều hành J2ME, Android, IOS, Hybrid, Web based
Mobile Application đã có r t nhiều phát triển trên thị tr ờng truyền thông di
động.
Trong v i năm trở lại đ y h điều h nh Android ra đời với sự kế thừa những
u vi t của các h điều h nh ra đời tr ớc và sự kết hợp của nhiều công ngh tiên
tiến nh t hi n nay đã đ ợc nhà phát triển công ngh nổi tiếng hi n nay là
Google. Android đã nhanh chóng l đối thủ cạnh tranh mạnh mẽ với các h điều
h nh tr ớc đó v đang l h điều h nh di động của t ơng lai v đ ợc nhiều
ng ời a chuộng. Từ những dẫn chứng và nhu cầu trên em quyết định chọn đề
t i ―Tìm hiểu hệ điều hành Android và Xây dựng phần mềm chat nội bộ‖
l m đề tài. Với mục đích nghiên cứu, tìm hiểu h điều hành Android và xây

dựng phần mềm chat nội bộ để có thể đáp ứng nhu cầu doanh nghi p.
Em xin chân thành cảm ơn các thầy cô trong khoa Công ngh thông tin - tr ờng
Đại học Vinh đã giảng dạy chúng em trong suốt quá trình học tập tại tr ờng, đặc bi t
cảm ơn sự h ớng dẫn nhi t tình của thầy giáo ThS. Lê Văn Th nh.
Nghệ An, tháng 1 năm 2016
Sinh viên thực hi n

Phan Việt Đức

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

4


Đồ án tốt nghiệp Đại học
MỤC LỤC
Trang
LỜI CẢM ƠN................................................................................................ 1
LỜI MỞ ĐẦU................................................................................................ 4
MỤC LỤC ..................................................................................................... 5
CHƯƠNG I. TÌM HIỂU VỀ HỆ ĐIỀU HÀNH ANDROID .................... 7
1.1. Android là gì? ......................................................................... 8
1.2. Lịch sử của Android ............................................................... 8
1.3. Một số phiên bản h điều hành Android ................................. 10
1.4. Kiến trúc của Android ............................................................ 20
1.4.1. Tầng ứng dụng Android .............................................................. 20
1.4.2. Application framework. .............................................................. 21
1.4.3. Library và android runtime ......................................................... 21
1.4.4. Linux kernel ................................................................................ 22
1.5. Eclipse adding J2EE & Tomcat 7 Support. ............................. 22

1.6. Các thành phần trong một Android Project. ............................ 23
1.6.1. AndroidManifest.xml .................................................................. 23
1.6.2. File R.java ................................................................................... 24
1.7. Chu kỳ ứng dụng Android ...................................................... 25
1.7.1. Chu kỳ sống thành phần .............................................................. 25
1.7.2. Acitivity Stack. ............................................................................ 26
1.7.3. Các trạng thái của chu kỳ ............................................................ 26
CHƯƠNG II: CHƯƠNG TRÌNH ............................................................. 27
2.1. Giới thi u .............................................................................. 27
2.2. Giới thi u về Socket .............................................................. 27
2.2.1. Socket là: ..................................................................................... 27
2.2.2. Khái ni m về địa chỉ và cổng (Address, Port ) ........................... 29
2.3. Máy ảo trên GENYMOTION ................................................. 29
2.4. Các b ớc tiến hành: ............................................................... 29
KẾT LUẬN .................................................................................................. 46
1. Kết quả đạt đ ợc của đề tài ....................................................... 46
2. Hạn chế của đề tài .................................................................... 46
Phan Việt Đức– Lớp 52K2 - Khoa CNTT

5


Đồ án tốt nghiệp Đại học
3. H ớng khắc phục v phát triển đề tài ........................................ 46
TÀI LIỆU THAM KHẢO .......................................................................... 47

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

6



Đồ án tốt nghiệp Đại học

MỤC LỤC ..................................................................................................... 5
Hình 1.1. Android timeline. ............................................................................ 9
Hình 1.2. Logo các phiên bản h điều hành Android ................................... 11
Hình 1.3. Android 3.0 Honeycomb là phiên bản dành riêng cho tablet 3.0 . 12
Hình 1.4. Android 4.0 Ice Cream Sandwich ................................................ 13
Hình 1.5. Android 4.1 Jelly Bean ................................................................. 14
Hình 1.6. Android 4.2 Jelly Bean ................................................................. 14
Hình 1.7. Android 4.2 Jelly Bean ................................................................. 15
Hình 1.8. Android 4.4 Kitkat ........................................................................ 16
Hình 1.9. Android 4.4 ................................................................................... 17
Hình 1.10. Android 4.4 ................................................................................. 17
Hình 1.11. Android 4.4 nhắn tin ................................................................... 18
Hình 1.12. Android 4.4 ................................................................................. 18
Hình 1.13. Android 4.4 ................................................................................. 19
Hình 1.14. Android 5.0 Lollipop .................................................................. 20
Hình 1.15. C u trúc stack h thống Android ................................................ 20
Hình 1.16. Android Project.......................................................................... 23
Hình 1.17. Chu kỳ ứng dụng Android .......................................................... 25
Hình 2.1. Ví dụ chuỗi JSON ......................................................................... 32
Hình 2.2. ipconfig trên Windows ................................................................ 33
Hình 2.3. Trên Mac ipconfig ....................................................................... 33
Hình 2.4. C u trúc th mục .......................................................................... 34
Hình 2.5. Cơ sở dữ li u đăng nhập ............................................................... 37
Hình 2.6. Đăng nhập ..................................................................................... 37
Hình 2.7. Tải ứng dụng về máy .................................................................... 42
Hình 2.8. Giao di n chat ............................................................................... 43
Hình 2.9. Giao di n đẹp ................................................................................ 45


Phan Việt Đức– Lớp 52K2 - Khoa CNTT

7


Đồ án tốt nghiệp Đại học

CHƯƠNG I. TÌM HIỂU VỀ HỆ ĐIỀU HÀNH ANDROID
1.1. Android là gì?

Android là một h điều hành dành cho thiết bị di động nh smartphone
tablet hay netbook. Android do Google phát triển dựa trên nền tảng Linux kernel
và các phần mềm mã nguồn mở.
Android là h điều hành mở mã nguồn chính duy nh t với 12 tri u dòng mã
bao gồm 3 tri u dòng mã XML, 2.8 tri u dòng mã C, 2.1 tri u dòng Java và 1.75
tri u dòng C++.
Ban đầu nền tảng này đ ợc phát triển bởi Android Inc (sau đó đ ợc Google
mua lại) 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, nhà phát triển ứng dụng,... cho thiết bị di dộng mà dẫn đầu là Google).
Android đ ợ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),... Tính đến thời điểm này, Android
đã trở thành nền tảng di động tăng tr ởng nhanh nh t thế giới.
1.2. Lịch sử của Android

Tháng 10/2003 Android (Inc) đ ợc thành lập tại Palo Alto, California, Hoa
Kỳ do Andy Rubin (đồng sáng lập của Danger Inc) Rich 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à một số thành viên khác chủ trì, 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.
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.
Ban đầu, Android là h điều hành cho các thiết bị cầm tay dựa trên lõii
Linux do công ty Android Inc. (California, Mỹ) 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. Các
thành viên chủ chốt tại ở Android Inc gồm có: Andy Rubin, Rich Miner, Nick
Sears, and Chris White.

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

8


Đồ án tốt nghiệp Đại học

Hình 1.1. Android timeline.

Tại Google nhóm kĩ s do Rubin đứng đầu đã phát triển một nền tảng di
động dựa trên hạt nh n Linux. Sau đó họ đã giới thi u cho các nhà sản xu t
thiết bị cầm tay và các nhà mạng trên những tiền đề về vi c cung c p một h
thống mềm dẻo, có khả năng n ng c p mở rộng cao.
Google cũng lên danh sách các th nh phần phần cứng đáp ứng nền tảng
v các đối tác phần mềm đồng thời cam kết với các nhà mạng rằng họ sẵn sàng
hợp tác ở nhiều c p độ khác nhau. Thời gian này, một loạt nguồn tin khẳng định
Google sẽ sớm tham gia phát triển h điều h nh riêng cho đi n thoại di động.
Tháng 9/2007 InformationWeek đăng tải một nghiên cứu của Evalueserve
cho biết Google đã nộp một số đơn xin c p bằng sáng chế trong lĩnh vực đi n
thoại di động.

Tháng 11/2007, Liên minh thiết bị cầm tay mở rộng (Open Handset
Alliance) với sự đồng thuận của Texas Instruments, tập đo n Broadcom
Google, HTC, Intel, LG, Tập đo n Marvell Technology Motorola Nvidia
Qualcomm, Samsung Electronics, Sprint Nextel và T-Mobile đã th nh lập với
mục đích phát triển các tiêu chuẩn mở cho thiết bị di động.
V nh vậy, Android chính thức gia nhập Liên minh thiết bị cầm tay mã
nguồn mở đồng thời Google đã c ng vố vi c họ bắt tay phát triển h điều hành
mã nguồn mở cho thiết bị di động nhằm cạnh tranh với Symbian, Windows
Mobile v các đối thủ khác.
Hãng cũng giới thi u sản phẩm Android đầu tiên là T-Mobile G1. Đ y l
một thiết bị di động có h điều hành dựa trên nhân Linux phiên bản 2.6.
Phan Việt Đức– Lớp 52K2 - Khoa CNTT

9


Đồ án tốt nghiệp Đại học
Từ tháng 10/2008, h điều h nh Android đã chính thức trở thành phần
mềm mã nguồn mở. Theo đó các c ng ty thứ ba đ ợc phép thêm những ứng
dụng của riêng của họ vào Android và bán chúng mà không cần phải hỏi ý kiến
Google.
Tháng 11/2008, Liên minh OHA ra mắt gói phát triển phần mềm Android
SDK cho nhà lập trình.
Đến tháng 12/2008, có thêm 14 thành viên mới gia nhập dự án Android
đ ợc cơng bố, gồm có ARM Holdings, Atheros Communications, Asustek
Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, và
Vodafone Group Plc.
Tháng 2/2009, một số c ng ty trong đó có Qualcomm v Texas
Instruments đã có trong tay những con chip chạy các phiên bản đơn giản của h
điều hành Android, mang đến những trải nghi m hoàn toàn mới cho ng ời dùng

trên toàn thế giới.
Đến năm 2010 số l ợng smartphone nền tảng Android tăng tr ởng mạnh
mẽ. Hàng loạt nhà sản xu t h ng đầu đã bắt tay sản xu t smartphone nh
Samsung, HTC, Motorola,... Thậm chí, Android cịn đ ợc coi l ―cứu cánh‖ cho
nhiều đại gia công ngh b ớc sang một trang mới trong vi c cải thi n doanh số,
bán hàng có lãi sau một thời gian dài trì tr , tiêu biểu là Motorola.
1.3. Một số phiên bản hệ điều hành Android

Từ lúc ra mắt phiên bản đầu tiên cho tới nay Android đã có r t nhiều bản
nâng c p. Đa số đều tập trung vào vi c vá lỗi và thêm những tính năng mới.

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

10


Đồ án tốt nghiệp Đại học

Hình 1.2. Logo các phiên bản hệ điều hành Android

Android những thế h đầu tiên 1.0( 9/2008) và 1.1( 2/2009) ch a có tên
gọi chính thức. Từ thế h tiếp theo, mỗi bản nâng c p đều đ ợc đặt với những
mã tên riêng dựa theo các món ăn h p dẫn theo thứ tự bảng chữ cái từ ―C-D-EF-G-H-I‖. Hi n tại các phiên bản chính của Android bao gồm:
1.5 (Cupcake): Ra mắt tháng 4/2009: Phiên bản này có một số tính năng
đáng chú ý nh : khả năng ghi lại và xem video thơng qua chế độ máy ghi hình,
tải video lên YouTube và ảnh lên Picasa trực tiếp từ đi n thoại, tích hợp bàn
phím ảo với khả năng đốn tr ớc văn bản, tự động kết nối với một thiết bị
Bluetooth trong một khoảng cách nh t định các widget v th mục mới có thể
c i đặt linh động trên màn hình chủ.
1.6 (Donut): Ra mắt tháng 9/2009: Phiên bản này giúp Nâng cao trải

nghi m trên kho ứng dụng Android Market, tích hợp giao di n tùy biến cho
phép ng ời dùng xóa nhiều ảnh cùng lúc, nâng c p Voice Search, nâng c p khả
năng tìm kiếm bookmarks, history, contacts và web trên màn hình chủ b ớc đầu
hỗ trợ m n hình độ phân giải WVGA.
2.0/2.1 (Eclair): Ra mắt tháng 10/2009. Phiên bản này có sự cải thi n rõ
r t trong giao di n ng ời dùng, tối u hóa tốc độ phần cứng, hỗ trợ nhiều kích
cỡ v độ phân giải m n hình hơn thay đổi giao di n duy t web và hỗ trợ chuẩn
HTML5, Exchange ActiveSync 2.5, nâng c p Google Maps 3.1.2, camera zoom
kĩ thuật số tích hợp đèn flash nâng c p bàn phím ảo và kết nối Bluetooth 2.1.
Phan Việt Đức– Lớp 52K2 - Khoa CNTT

11


Đồ án tốt nghiệp Đại học
2.2 (Froyo): Ra mắt tháng 5/2010: Phiên bản này chú trọng nâng c p tốc
độ xử lí, giới thi u engine Chrome V8 JavaScript, hỗ trợ Adobe Flash10.1, thêm
tính năng tạo điểm truy cập Wi-Fi. Một tính năng đáng chú ý khác hỗ trợ chuyển
đổi nhanh chóng giữa các ngơn ngữ và từ điển trên b n phím đồng thời cho phép
c i đặt và cập nhật ứng dụng ở các thiết bị mở rộng bộ nhớ. Một trong những
smartphone đầu tiên chạy phiên bản Android 2.2 Froyo là LG Optimus One.
2.3 (Gingerbread): Ra mắt tháng 12/2010: Phiên bản n y đã n ng c p
đáng kể giao di n ng ời dùng, cải thi n bàn phím ảo thêm tính năng copy/paste
hỗ trợ cơng ngh giao tiếp tầm sóng ngắn NFC, hỗ trợ chuẩn video WebM và
n ng cao tính năng copy–paste. Cùng với phiên bản Gingerbread Google cũng
ra mắt đi n thoại đầu tiên của hãng sử dụng nền tảng này là Google Nexus S.

Hình 1.3. Android 3.0

Honeycomb là phiên bản dành riêng cho tablet 3.0 3.0 (Honeycomb): Ra

mắt tháng 2/2011: Đ y l phiên bản h điều hành dành riêng cho máy tính bảng
tablet với giao di n mới tối u hóa cho tablet từ các thao tác đều phụ thuộc màn
hình cảm ứng (nh l ớt web, duy t mail,...). Honeycomb hỗ trợ bộ xử lí đa nh n
và xử lý đồ họa đồng thời hỗ trợ nhiều màn hình home khác nhau, cho phép
ng ời dùng dễ dàng tùy biến giao di n nếu muốn.
3.1 (Ice-cream sandwich): Là sự kết hợp giữa Gingerbread và Honeycomb
và sẽ chạy trên t t cả các thiết bị nh đi n thoại, máy tính bảng, máy tính xách
tay,...
9. Android 4.0 Ice Cream Sandwich

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

12


Đồ án tốt nghiệp Đại học

Hình 1.4. Android 4.0 Ice Cream Sandwich

Cuối năm 2011 Google chính thức giới thi u đi n thoại Galaxy Nexus, thiết
bị đầu tiên trên thị tr ờng sử dụng Android 4.0 Ice Cream Sandwich. Có thể nói
Android 4.0 là sự thay đổi lớn nh t trong lịch sử phát triển của Android tính.
Android 4.0 hỗ trợ một bộ font mới tên l Roboto đ ợc cho là tối u hóa để
dùng trên các m n hình độ phân giải c ng ng y c ng cao hơn đồng thời để hiển
thị đ ợc nhiều th ng tin hơn trên m n hình.
Đ y cũng l lần đầu tiên Google hợp nh t h điều hành dành cho
smartphone và cho máy tính bảng vào làm một. Đ y l một động thái của hãng
nhằm giảm thiểu sự phân mảnh vốn đang ng y c ng nghiêm trọng của Android.
Khi chạy trên máy tính bảng, Android 4.0 sẽ có một giao di n khác tối u cho
màn hình lớn nh ng về cơ bản thì tính năng của nó vẫn giống h t nh lúc chạy

trên smartphone
10. Android 4.1 Jelly Bean
Đánh d u sự ra đời với chiếc máy tính bảng Nexus 7 do asus sản xu t.

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

13


Đồ án tốt nghiệp Đại học

Hình 1.5. Android 4.1 Jelly Bean

Về giao di n, khơng có nhiều thay đổi so với Android 4.0, vẫn là màn
hình chính với thanh dock bên d ới quen thuộc. Giao di n kiểu này r t đơn giản
nh ng lại đẹp và gọn gàng, giúp chúng ta dễ dàng theo dõi những thông tin xu t
hi n trên m n hình đặc bi t l khi điều khiển các ứng dụng. Ở màn hình
Lockscreen, giờ đ y vịng tr ợt mở khóa có đến ba biểu t ợng để kích hoạt ba
tính năng khác nhau chứ khơng chỉ có hai nh trên Android 4.0.
11. Android 4.2 Jelly Bean

Hình 1.6. Android 4.2 Jelly Bean

Ngày 30/10/2012, Google chính thức tuyên bố cập nhật h điều hành
Android của hãng lên phiên bản 4.2 và vẫn giữ nguyên tên gọi "Jelly Bean" (có
Phan Việt Đức– Lớp 52K2 - Khoa CNTT

14



Đồ án tốt nghiệp Đại học
nghĩa l kẹo dẻo đậu). Đ ợc hãng gọi là "một h ơng vị mới của Jelly Bean",
Android 4.2 mang trong mình nhiều tính năng mới nh hỗ trợ Miracast, bàn
phím có thể nhập li u bằng cách vẽ các đ ờng nét từ kí tự n y đến kí tự khác,
chế độ chụp ảnh tồn cảnh Photo Sphere, ứng dụng Gmail mới và cịn r t nhiều
thứ khác nữa.
12. Android 4.2 Jelly Bean
Lại thêm một thế h Jelly Bean nữa và lần này là Android 4.3. Ngày
24/7/2013 Google đã chính thức ra mắt h điều hành này song song với chiếc
Nexus 7 (2013). Đ y l phiên bản Android mới nh t đang có mặt trên thị tr ờng
v đi kèm những tính năng mới nh hỗ trợ kết nối Bluetooth Smart, bộ API
OpenGL ES 3.0, bổ sung tính năng sử dụng Wi-Fi để định vị ngay cả khi ng ời
dùng tắt kết nối n y đi cùng nhiều thay đổi lớn nhỏ khác.

Hình 1.7. Android 4.2 Jelly Bean

Bên cạnh tính năng Multi User của Android 4.2 nh đã nói ở trên, Google
bổ sung thêm một tính năng mới cho Android 4.3 đó l Restricted Profile. Mỗi
thành viên sẽ có một "hồ sơ" riêng của mình và chỉ có thể l m đ ợc những gì
đ ợc chỉ định trong "hồ sơ". Ví dụ, cha mẹ có thể khóa tính năng in-app
purchase của một ứng dụng n o đó để ngăn con trẻ v tình mua h ng trăm USD.
Ngồi ra, khi áp dụng v o m i tr ờng doanh nghi p thì nó sẽ cho phép ng ời
quản trị phân quyền cho nhân viên dễ d ng hơn.
13. Android 4.4 Kitkat

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

15



Đồ án tốt nghiệp Đại học
Thế h kế tiếp của Android là Android 4.4 và khơng cịn mang tên Jelly
Bean nữa mà gọi là KitKat. Nếu nh bạn ch a biết thì KitKat là một loại bánh
xốp bọc chocolate của hãng Nestle. Cách đặt tên n y cũng ho n to n khớp với
trình tự chữ cái mà các phiên bản Android sử dụng làm tên mã. Google tiết lộ
thêm rằng "mục tiêu của en với Android KitKat đó l mang trải nghi m Android
đáng kinh ngạc đến cho mọi ng ời". Android Kitkat xu t hi n đầu tiên trên
chiếc smartphone Nexus 5. Những cải tiến trên Android Kitkat bao gồm Chế độ
tồn màn hình – Immersive Mode, Hi u ứng chuyển cảnh màn hình -Transition
Manager, Storage Access Framework, Chromium WebView, NFC,Cổng hồng
ngoại – Infrared Blasters …

Hình 1.8. Android 4.4 Kitkat

Giao di n: Tông màu chủ đạo của font chữ l xanh v đen đ ợc sử dụng
trên Android Jelly Bean đ ợc Google thay đổi bằng t ng m u đen v ghi trên
Android 4.4 Kitkat vừa ra mắt, thể hi n rõ ở các dòng chữ trên thanh thông báo
Notification

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

16


Đồ án tốt nghiệp Đại học

Hình 1.9. Android 4.4

Phần mềm đi n thoại mặc định của Kitkat đ ợc làm mới th ng minh hơn
cho phép thao tác nhanh. Bên cạnh đó Google cũng kết hợp dịch vụ tìm kiếm

Google Search vào ứng dụng này, cho phép dò và tự động liên kết các danh bạ
có sẵn trên Internet váo số đi n thoại mới.

Hình 1.10. Android 4.4

Từ phiên bản 4.4, ứng dụng nhắn tin truyền th ng Text Messages đ ợc
gộp chung với ứng dụng nhắn tin và liên lạc online Hangouts. Đ y l một sự
thay đổi hợp lý giúp ng ời dùng Android có đ ợc sự thuận ti n khi liên lạc trên
đi n thoại, giống nh iMessage trên iOS.

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

17


Đồ án tốt nghiệp Đại học

Hình 1.11. Android 4.4 nhắn tin

Bàn phím mặc định của Android đ ợc bổ sung thêm các biểu t ợng
Emoji.

Hình 1.12. Android 4.4

Google cũng cho phép ng ời dùng thay đổi giao di n (laucher) trên
Android 4.4 dễ d ng hơn các phiên bản tr ớc khi bổ sung thêm mục c i đặt
Home ở trong Setting, cho phép chọn lựa các Laucher khác làm giao di n chính
của thiết bị thay thế giao di n mà Google cung c p.

Phan Việt Đức– Lớp 52K2 - Khoa CNTT


18


Đồ án tốt nghiệp Đại học

Hình 1.13. Android 4.4

Chế độ định vị, phát nhạc trên Android 4.4 mới đều sẽ tiết ki m năng l ợng
hơn. Ngay trên m n hình khóa các bản nhạc hay video đang phát cũng có thể
điều chỉnh đ ợc thời gian hay tạm dừng, khơng bắt buộc ng ời dùng phải mở
khóa và truy cập vào ứng dụng nh cũ. Ngo i ra phiên bản mới của Google
cũng đ a ra các chế độ kết nối Bluetooth tiết ki m năng l ợng, cung c p các
hàm lập trình điều khiển bằng hồng ngoại IR.
14. Android 5.0 Lollipop

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

19


Đồ án tốt nghiệp Đại học
Hình 1.14. Android 5.0 Lollipop

Sau hơn một năm Android 4.0 KitKat ra mắt Google đã chính thức trình
làng phiên bản hậu du mới nh t với tên gọi Android Lollipop đ ợc đánh giá l
h điều hành có những thay đổi rõ r t v đáng kể nh t trong lịch sử Android từ
tr ớc đến nay.
Thiết kế báo nhắc hoàn toàn mới: Kẹo ngọt mang đến một phong cách
báo nhắc thực sự khác bi t. Giờ đ y h thống báo nhắc cải tiến chỉ hi n ra những

thông báo quan trọng nh t và tự động ẩn đi những th ng báo kh ng đ ợc u
tiên. Khi bạn tr ợt tay xuống d ới, giống nh lật một dãy bài, những báo nhắc
kia mới lần l ợt hi n ra.
1.4. Kiến trúc của 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 1.15. C u trúc stack h thống Android
1.4.1.Tầng ứng dụng Android

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

20


Đồ án tốt nghiệp Đại học
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.
1.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 Manager đ ợc dùng để quản lý chu trình sống của ứng dụng và
điều h ớng các activity.
1.4.3. Library và android runtime.

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

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

21


Đồ án tốt nghiệp Đại học
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 implementation of the standard C
system library (libc), tuned for embedded Linux-based devices.

 Media Libraries – based on PacketVideo's OpenCORE, the libraries
support playback and recording of many popular audio and video formats, as
well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG,
and PNG.
 Surface Manager - Quản lý vi c truy xu t vào h thống hiển thị.
 LibWebCore - a modern web browser engine which powers both the
Android browser and an embeddable web view.
 SGL - the underlying 2D graphics engine. 3D libraries - an
implementation based on OpenGL ES 1.0 APIs, the libraries use either hardware
3D acceleration (where available) or the included, highly optimized 3D software
rasterizer.
 FreeType - bitmap and vector font rendering.
 SQLite - a powerful and lightweight relational database engine available
to all applications.
1.4.4. Linux kernel

Android dựa trên Linux phiên bản 2.6 cho h thống dịch vụ cốt lõi nh
security, memory management, process management, network stack, and driver
model. 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. Kernel ở đ y nói đến những phần mềm, ứng
dụng ở mức th p (low-level) trong h thống, có khả năng thay đổi linh hoạt để
phù hợp với phần cứng. Chúng t ơng tác với t t cả ứng dụng và hoạt động trong
chế độ user mode, cho phép các quá trình khác – hay cịn gọi là server, nhận
thơng tin từ các thành phần khác qua inter-process communication (IPC)
1.5. Eclipse adding J2EE & Tomcat 7 Support.

Eclipse là tạo ra một "Apache cho các công cụ phát triển" — một khung mã
nguồn mở cung c p nhiều dịch vụ bên d ới mà các nhà phát triển phần mềm
cần. Đ y sẽ là một "bộ công cụ để thiết kế các bộ công cụ". Không chỉ là một bộ
các API, mà khung công tác sẽ bao gồm mã thực đ ợc thiết kế để làm vi c thực.

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

22


Đồ án tốt nghiệp Đại học
Nền tảng Eclipse l cơ sở cho vi c xây dựng và chạy các công cụ phát triển
phần mềm tích hợp, xuyên suốt từ đầu đến cuối. Nền tảng này bao gồm các
thành phần phần mềm mã nguồn mở đ ợc các nhà cung c p công cụ sử dụng để
xây dựng các giải pháp cắm thêm vào Các bàn làm vi c (Workbench) phần mềm
tích hợp. Nền tảng Eclipse tích hợp cơng ngh đ ợc biểu diễn thông qua một
khung c ng tác đ ợc thiết kế và triển khai thực hi n rõ ràng
Các IDE eclipse m đến cùng với SDK Android, không có J2EE và hỗ trợ
máy chủ Tomcat. Vì vậy có thêm J2EE và tomcat mở rộng. Một lựa chọn khác
sẽ đ ợc tải xuống một nhật hỗ trợ J2EE nh ng muốn sử dụng eclipse hỗ trợ cả
Android và J2EE thay vì hai IDE khác nhau.
1.6. Các thành phần trong một Android Project

Hình 1.16. Android Project
1.6.1. AndroidManifest.xml

Trong b t kì một project Android nào khi tạo ra đều có một file
AndroidManifest.xml file n y đ ợc dùng để định nghĩa các screen sử dụng, các
permission cũng nh các theme cho ứng dụng. Đồng thời nó cũng chứa thơng
tin về phiên bản SDK cũng nh main activity sẽ chạy đầu tiên.

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

23



Đồ án tốt nghiệp Đại học
File n y đ ợc tự động sinh ra khi tạo một Android project. Trong file
manifest bao giờ cũng có 3 th nh phần chính đó l : application permission v
version.
 Application
Thẻ < Application> bên trong thẻ này chứa các thuộc tính đ ợc định nghĩa
cho ứng dụng Android nh :
 android:icon = ―drawable resource‖: Ở đ y đặt đ ờng dẫn đến file icon
của ứng dụng khi c i đặt. VD: android:icon = ―@drawable/icon‖.
 android:name = ―string‖: thuộc tính n y để đặt tên cho ứng dụng Android.
Tên này sẽ đ ợc hiển thị lên m n hình sau khi c i đặt ứng dụng.
 android:theme = ―drawable theme‖: thuộc tính n y để đặt theme cho ứng
dụng. Các theme l các cách để hiển thị giao di n ứng dụng.
Ngồi ra cịn nhiều thuộc tính khác…
 Permission
Bao gồm các thuộc tính chỉ định quyền truy xu t và sử dụng tài nguyên của
ứng dụng. Khi cần sử dụng một loại t i nguyên n o đó thì trong file manifest
của ứng dụng cần phải khai báo các quyền truy xu t nh sau:
<uses-permission android:name="android.permission.INTERNET" />
 SDK version
Thẻ xác định phiên bản SDK đ ợc khai báo nh sau:
android:minSdkVersion="14"
1.6.2. File R.java

File R.java là một file tự động sinh ra ngay khi tạo ứng dụng file n y đ ợc
sử dụng để quản lý các thuộc tính đ ợc khai báo trong file XML của ứng dụng
và các tài nguyên hình ảnh.
Mã nguồn của file R.java đ ợc tự động sinh khi có b t kì một sự ki n nào
xảy xa l m thay đổi các thuộc tính trong ứng dụng. Chẳng hạn nh bạn kéo và

thả một file hình ảnh từ bên ngồi vào project thì ngay lập tức thuộc tính đ ờng
dẫn đến file đó cũng sẽ đ ợc hình thành trong file R.java hoặc xố một file hình
ảnh thì đ ờng dẫn t ơng ứng đến hình ảnh đó cũng tự động bị xoá.

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

24


Đồ án tốt nghiệp Đại học
1.7. Chu kỳ ứng dụng Android

Hình 1.17. Chu kỳ ứng dụng Android

Một tiến trình Linux gói gọn một ứng dụng Android đã đ ợc tạo ra cho ứng
dụng khi codes cần đ ợc Run và chạy:
 Nó khơng phụ thuộc.
 H thống cần l y lại bộ nhớ mà nó chiếm giữ cho các ứng dụng khác.
Một sự khác th ờng v đặc tính cơ bản của Android là thời gian hoạt động
tiến trình ứng dụng kh ng đ ợc điều khiển tr ợc tiếp. Android đ ợc xác định
bởi h thống qua một kết hợp của:
 Những phần của ứng dụng mà h thống biết
 Những phần quan trọng nh thế n o đối với ng ời dùng
Bao nhiêu vùng nhớ chiếm lĩnh trong h thống.
1.7.1. Chu kỳ sống thành phần

Phan Việt Đức– Lớp 52K2 - Khoa CNTT

25



×