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

Tìm hiểu và lập trình trò chơi học từ vựng trên android

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 (2.47 MB, 57 trang )

TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CNTT & TT
BỘ MÔN TIN HỌC ỨNG DỤNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

Tìm hiểu và lập trình
Trò Chơi Học Từ Vựng trên Android

Sinh viên thực hiện
Phan Hoài Nam
MSSV:1111531

Cán bộ hướng dẫn
Th.s Nguyễn Minh Trung

Cần Thơ, 2015


TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CNTT & TT
BỘ MÔN TIN HỌC ỨNG DỤNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

Tìm Hiểu và lập trình
Trò chơi Học Từ Vựng trên Android
Sinh viên thực hiện

Cán bộ hướng dẫn


Phan Hoài Nam
MSSV:1111531

Ths. Nguyễn Minh Trung

Cán bộ phản biện
Ts. Nguyễn Hữu Hòa
Ks. Đặng Mỹ Hạnh
Ths. Nguyễn Minh Trung
Luận văn được bảo vệ tại:Hội đồng chấm luận văn tốt nghiệp Bộ môn Tin học Ứng
dụng, Khoa CNTT & TT, Trường Đại học Cần Thơ vào ngày 15 tháng 5 năm 2015

Mã số đề tài:

Cần Thơ, 2015


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

MỤC LỤC
Trang
MỤC LỤC ........................................................................................................................... 3
DANH MỤC HÌNH............................................................................................................. 5
DANH MỤC BẢNG ........................................................................................................... 6
LỜI CẢM ƠN ...................................................................................................................... 7
DANH MỤC KÝ HIỆU VÀ VIẾT TẮT ............................................................................ 8
TÓM TẮT............................................................................................................................ 9
ABSTRACT ...................................................................................................................... 10
CHƯƠNG 1 TỔNG QUAN .............................................................................................. 11
1.1 ĐẶT VẤN ĐỀ ......................................................................................................... 11

1.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ ......................................................................... 11
1.3 PHẠM VI ĐỀ TÀI ................................................................................................. 11
1.4 PHƯƠNG PHÁP NGHIÊN CỨU ........................................................................... 11
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT ................................................................................... 12
2.1 GIỚI THIỆU HĐH ANDROID............................................................................... 12
2.2 LỊCH SỬ PHÁT TRIỂN CỦA HĐH ANDROID ................................................... 13
2.3 KIẾN TRÚC HĐH ANDROID ............................................................................... 20
2.3.1 Phần cứng ......................................................................................................... 20
2.3.2 Hệ điều hành Android ...................................................................................... 20
2.3.3 Kết nối mạng .................................................................................................... 22
2.3.4 Bảo mật ............................................................................................................. 23
2.3.5 Các ứng dụng có sẵn trên nền tảng Android: ................................................... 24
2.4 PHÁT TRIỂN ỨNG DỤNG TRÊN NỀN TẢNG ANDROID. .............................. 25
2.4.1 Những yêu cầu để phát triển ứng dụng trên nền tảng Android: ....................... 25
2.4.2 Công cụ và môi trường phát triển ứng dụng Android. ..................................... 25
2.5 SO SÁNH GIỮA CÁC HỆ ĐIỀU HÀNH DI ĐỘNG ............................................ 25
2.6 CẤU TRÚC CỦA MỘT ỨNG DỤNG ANDROID ................................................ 27
2.6.1 Các thành phần của một ứng dụng android ...................................................... 27
2.6.2 Cấu trúc lưu trữ dự án Android. ....................................................................... 29
2.7 CSDL SQLITE TRONG ANDROID ...................................................................... 31
3


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
2.7.1 Giới thiệu về CSDL SQLite ............................................................................. 31
2.7.2 Chi tiết về các đặc tính của SQLite .................................................................. 31
2.8 KIẾN THỨC VỀ PHP,MYSQL VÀ JSON. ........................................................... 33
2.8.1 PHP ................................................................................................................... 33
2.8.2 MySQL ............................................................................................................. 33
2.8.3 Json ................................................................................................................... 33

CHƯƠNG 3 NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU ............................................... 35
3.1 PHÂN TÍCH TRÒ CHƠI HỌC TỪ VỰNG ........................................................... 35
3.1.1 Giới thiệu .......................................................................................................... 35
3.1.2 Luật chơi, cách chơi và cách tính điểm: ........................................................... 35
3.1.3 Lưu trữ thông tin người dùng. .......................................................................... 35
3.2 THIẾT KẾ TRÒ CHƠI ........................................................................................... 36
3.3 CÁC THUẬT TOÁN TRONG TRÒ CHƠI ............................................................ 45
3.3.1 Tạo câu hỏi trong trò chơi ................................................................................ 45
3.3.2 Tiếp nhận câu trả lời ......................................................................................... 47
3.4 CÁC KĨ THUẬT DÙNG TRONG LẬP TRÌNH TRÒ CHƠI ................................ 50
3.4.1 Sử dụng CSDL SQLite ..................................................................................... 50
3.4.2 Đăng ký Broadcast Receiver ............................................................................ 51
3.4.3 Xử lý đa tiến trình bằng AsyncTask ................................................................. 51
3.4.4 Tùy biến ListView trong Android .................................................................... 52
3.4.5 Kết nối với CSDL MySql. ................................................................................ 53
3.4.6 Sử dụng Shared Preferences trong Android. .................................................... 53
3.5 KẾT QUẢ ĐẠT ĐƯỢC. ......................................................................................... 53
3.6 NHỮNG VẤN ĐỀ CÒN LẠI ................................................................................. 54
KẾT LUẬN VÀ ĐỀ NGHỊ ............................................................................................... 55
PHỤ LỤC:CÁC PHẦN MỀM SỬ DỤNG TRONG ĐỀ TÀI........................................... 56
TÀI LIỆU THAM KHẢO ................................................................................................. 57

4


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

DANH MỤC HÌNH
Hình 2.3.2.1 Các Tầng Của Hệ Điều Hành Android ......................................................... 22
Hình 2.3.4.1 Sơ đồ hoạt động trong thiết bị Android ........................................................ 24

Hình 2.6.1 Biểu đồ miêu tả Activity State......................................................................... 28
Hình 3.2.1 Sơ đồ use case của ứng dụng ........................................................................... 36
Hình 3.2.2 Sơ đồ hoạt động trong trò chơi ........................................................................ 37
Hình 3.2.3 Menu chính của trò chơi .................................................................................. 38
Hình 3.2.4 Màn hình đăng nhập của trò chơi .................................................................... 39
Hình 3.2.5 Màn hình đăng ký tài khoản của ứng dụng ..................................................... 40
Hình 2.3.6 Giao diện chọn chủ đề của trò chơi ................................................................. 41
Hình 3.2.7 Giao diện chính của trò chơi............................................................................ 42
Hình 3.2.8 Giao diện bảng xếp hạng trong trò chơi .......................................................... 43
Hình 3.2.9 Giao diện nhập từ vựng tự học. ....................................................................... 44
Hình 3.3.1.1 Các nút sẽ được gán chứ cái ......................................................................... 45
Hình 3.3.1.2 Từ khoá được tạo là HOUSE........................................................................ 46
Hình 3.3.1.3 Câu hỏi sau khi tạo xong .............................................................................. 46
Hình 3.3.1.4 Sơ đồ thuật toán tạo câu hỏi ......................................................................... 47
Hình 3.3.2.1 Khi người dùng chọn đúng chữ cái .............................................................. 48
Hình 3.3.2.2 Khi người dùng chọn sai chữ cái .................................................................. 49
Hình 3.3.2.3 Sơ đồ tiếp nhận câu trả lời từ người dùng .................................................... 50
Hình 3.4.4.1 Tùy biến listview trong Android .................................................................. 52
Hình 3.5.1 Những hình ảnh trong trò chơi ........................................................................ 54

5


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

DANH MỤC BẢNG
Bảng 1 Danh mục ký tự và viết tắt ...................................................................................... 8
Bảng 2.5.1 So sánh giữa các HĐH di động ....................................................................... 26
Bảng 2.6.2.1 Cấu trúc lưu trữ dự án Android. ................................................................... 29
Bảng 2.6.2.2 Cấu trúc lưu trữ dự án Android. ................................................................... 30

Bảng 2.6.2.3 Cấu trúc lưu trữ trong thư mục RES. ........................................................... 30

6


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

LỜI CẢM ƠN
Lời đầu tiên em xin chân thành cảm ơn quý thầy cô trong khoa Công Nghệ Thông Tin
và Truyền Thông nói chung và Bộ Môn Tin Học Ứng Dụng nói riêng. Cảm ơn quý
thầy cô đã tận tình chỉ bảo và giúp đỡ cho em trong suốt quá trình học tập tại trường.
Em cũng xin gửi lời cảm ơn sâu sắc đến Th.s Nguyễn Minh Trung, người đã trực tiếp
hướng dẫn và tạo mọi điều kiện thuận lợi để giúp em hoàn thành tốt đề tài luận văn.
Mặc dù đã rất cố gắng tìm tòi và học hỏi nhưng kiến thức của em còn nhiều hạn chế,
không thể tránh khỏi sai sót, em mong nhận được nhiều sự góp ý từ thầy cô và các bạn.
Sau cùng em xin kính chúc quý thầy cô sức khỏe dồi dào, thành công trong sự nghiệp.
Em xin chân thành cảm ơn!

Cần Thơ, ngày 15 tháng 04 năm 2015
Sinh viên thực hiện

Phan Hoài Nam

7


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

DANH MỤC KÝ HIỆU VÀ VIẾT TẮT
A2DP

AAC
ADT
ARM
AVRCP
C2DM
CDMA
CSDL
EVDO

Nghĩa đầy đủ
Advanced Audio Distribution Profile
Advanced Audio Coding
Android Development Tools
Acorn RISC Machine
Audio/Video Remote Control Profile
Cloud to Device Messaging
Code Division Multiple Access
Cơ sở dữ liệu
Evolution-Data Optimized

HĐH
HTML
GPS

Hệ điều hành.
HyperText Markup Language
Global Positioning System

IEEE


Institute of Electrical and Electronics Engineers

IMAP4

Internet Message Access Protocol

JDK
MMS
NFC
PPI

Java Development Kit
Multimedia Messaging Service
Near Field Communication
Pixel Per Inch

POP3

Post Office Protocol 3

OTA
RSS
SIP
SMTP
SMS
SNI
UI
USB
VoIP
XHTML

XML

Over-The-Air
Rich Site Summary
Session Initiation Protocol

Ký tự viết tắt

Simple Mail Transfer Protocol
Short Message Service
Server Name Indication
User Interface
Universal Serial Bus
Voice over IP
Extensible HyperText Markup Language
Extensible Markup Language
Bảng 1 Danh mục ký tự và viết tắt

8


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

TÓM TẮT
Ngày nay với sự phát triển mạnh mẽ và tiến bộ vượt bật của công nghệ thông tin
nhất là các công nghệ về di động đã làm cho cuộc sống con người dễ dàng hơn rất nhiều.
Kéo theo đó là sự ra đời của nhiều nền tảng di động tiêu biểu như IOS của Apple,Android
của Google,hay Windows phone của Microsoft.
Các hệ điều hành trên đều chạy trên các thiết bị di động,thứ mà mọi người có thể dễ dàng
mang theo bên người,với sức mạnh xử lý không thua kém máy tính để bàn hay laptop,

nhầm phục vụ cho nhu cầu học tập,làm việc,giải trí,thông tin liên lạc.v.v...
Để tận dụng được tính tính tiện lợi cũng như khả năng xử lý của các thiết bị di động trong
việc học tập, các ứng dụng phục vụ cho nhu cầu này lần lượt ra đời, tiêu biểu là các ứng
dụng học tiếng Anh,nhưng đa phần các ứng dụng này đều không mang tính chất giải trí.
Đề tài này được thực hiện nhầm giải quyết vấn đề trên. Kết quả dự kiến của đề tài
là một ứng dụng trên di động kết hợp giữa việc học tập và giải trí lại với nhau trên nền
tảng hệ điều hành Android.
Từ Khóa:Từ vựng,Android,SmartPhone,Json,Sqlite,Php,Mysql.

9


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

ABSTRACT
Nowadays, The great development and advance of the information technology, mobile
technology in particular have made the human’s life become more convenient as well as
invention of typical mobile foundation such as IOS (Apple), Android (Google), or
Window phone (Microsoft).... These Operating Systems are running on mobile devices,
which people feel convenient to bring them follow. The access power of these device, is
not as less as desktop or laptop, serves learning, working, entertainment, communications
demand, etc. To take advantage of the convenience as well as processing capacity of the
mobile devices in learning, applications serving these demands have been invented.
Especially, applications in learning English, but these are not entertainment. This topic is
carried out to solve those problems. Predictive result of the topic is a mobile application
combining study and entertainment together on Android Operating Systems.
Keyword:Vocabulary,Android,Smarphone,Json,Sqlite,Php,Mysql.

10



Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

CHƯƠNG 1 TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ
Trong thời đại ngày nay, các thiết bị di động thông minh ngày càng phổ biến, từ
điện thoại thông minh,máy tính bảng cho đến các thiết bị đeo được như đồng hồ thông
minh,vòng tay sức khỏe hay kính thực tế ảo. Đa phần trong số chúng đều chạy các hệ điều
hành phổ biến như IOS, Android, Windows phone,.v.v...
Trong đó Android là hệ điều hành phổ biến nhất với những lợi thế mã nguồn mở,kho ứng
dụng khổng lồ, số lượng thiết bị phong phú và đa dạng về kiểu dáng, giá thành và nhà sản
xuất.
Ngày nay tiếng Anh là một trong những ngôn ngữ phổ biến nhất thế giới, chính vì
vậy nhu cầu học tiếng Anh cũng rất lớn và để học tốt tiếng Anh thì từ vựng là phần quan
trọng không thể thiếu.
Nhầm giúp người dùng di động có nhu cầu học từ vựng tiếng Anh ngay trên thiết bị Android
của mình, đề tài này được đưa ra để giải quyết những vấn đề sau:
 Tận dụng tính tiện lợi của các thiết bị di động Android trong việc phục vụ nhu cầu
học tập.
 Cung cấp cho người dùng một phương pháp học từ vựng mới vừa mang tính học tập
vừa mang tính giải trí,thư giãn.
1.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ
Các ứng dụng phục vụ cho nhu cầu học tập từ lâu đã được phát triển trên nhiều nền
tảng khác nhâu trong đó có Android.Một số ưng dụng tiêu biểu như:Học Từ Tiếng Anh
Miễn Phí của LanguageCourse.Net với hơn 1 triệu lượt tải về,Học Tiếng Anh của App free
với hơn 100.000 lượt tải về.v.v...điều này cho thấy nhu cầu học tiếng Anh của ngừoi dùng
Android là rất lớn.
Các ứng dụng này cung cấp các giải pháp giúp người dùng học tốt tiếng Anh và đều
là những ứng dụng cho phép download miễn phí.
1.3 PHẠM VI ĐỀ TÀI

Đề tài được nghiêng cứu và thực hiện trên nền tảng kiến thức ngôn ngữ lập trình
Java dựa trên hệ điều hành Android.Ứng dụng được viết bằng phần mềm Android Studio
kèm theo bộ Android SDK và được chạy thử trên một điện thoại Android.
Do giới hạn về kiến thức và thời gian nên mục tiêu của đề tài là tạo ra một ứng dụng
học từ vựng với phương pháp mới lạ và hiệu quả trên hệ điều hành Android.Ứng dụng sẽ
có khả năng sao lưu và phục hồi CSDL của người dùng thông qua một web service
1.4 PHƯƠNG PHÁP NGHIÊN CỨU
Đề tài được nghiên cứu và thực hiện tuần tự theo các bước sau:
 Tìm hiểu hệ điều hành Android.
 Kiến trúc của hệ điều hành Android.
 Cấu trúc của một ứng dụng Android.
 Phân tích và thiết kế trò chơi.
 Phân tích và thiết kế thuật toán cho trò chơi.
 Cài đặt và kiểm thử.
 Nhận xét và đánh giá kết quả đạt được.
11


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
2.1 GIỚI THIỆU HĐH ANDROID
Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho các
thiết bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính bảng. Ban
đầu, Android được phát triển bởi tổng công ty Android, với sự hỗ trợ tài chính từ Google
và sau này được chính Google mua lại vào năm 2005. Android ra mắt vào năm 2007 cùng
với tuyên bố thành lập liên minh thiết bị cầm tay mở, một hiệp hội gồm các công ty phần
cứng, phần mềm, và viễn thông với mục tiêu đẩy mạnh các tiêu chuẩn mở cho các thiết bị
di động. Chiếc điện thoại đầu tiên chạy Android được bán vào tháng 10 năm 2008.
Android có mã nguồn mở và Google phát hành mã nguồn theo Giấy phép Apache. Chính

mã nguồn mở cùng với một giấy phép không có nhiều ràng buộc đã cho phép các nhà phát
triển thiết bị, mạng di động và các lập trình viên nhiệt huyết được điều chỉnh và phân phối
Android một cách tự do. Ngoài ra, Android còn có một cộng đồng lập trình viên đông đảo
chuyên viết các ứng dụng để mở rộng chức năng của thiết bị, bằng một loại ngôn ngữ lập
trình Java có sửa đổi. Vào tháng 10 năm 2012, có khoảng 700.000 ứng dụng trên Android,
ước tính khoảng 25 tỷ lượt tải đến tháng 7 năm 2014 số ứng dụng đạt 1,3 triệu trong đó có
hơn 1 triệu ứng dụng miễ phí và hơn 50 tỉ lượt tải về.
Những yếu tố này đã giúp Android trở thành nền tảng điện thoại thông minh phổ
biến nhất thế giới, vượt qua Symbian vào quý 4 năm 2010, và được các công ty công nghệ
lựa chọn khi họ cần một hệ điều hành không nặng nề, có khả năng tinh chỉnh, và giá rẻ
chạy trên các thiết bị công nghệ cao thay vì tạo dựng từ đầu. Kết quả là mặc dù được thiết
kế để chạy trên điện thoại và máy tính bảng, Android đã xuất hiện trên TV, máy chơi trò
chơi và các thiết bị điện tử khác. Bản chất mở của Android cũng khích lệ một đội ngũ đông
đảo lập trình viên và những người đam mê sử dụng mã nguồn mở để tạo ra những dự án
do cộng đồng quản lý. Những dự án này bổ sung các tính năng cao cấp cho những người
dùng thích tìm tòi hoặc đưa Android vào các thiết bị ban đầu chạy hệ điều hành khác.
Android chiếm 81% thị phần điện thoại thông minh trên toàn thế giới vào thời điểm quý 1
năm 2014, với tổng cộng hơn 900 triệu thiết bị đã được kích hoạt và 1,5 triệu lượt kích hoạt
mỗi ngày. Sự thành công của hệ điều hành cũng khiến nó trở thành mục tiêu trong các vụ
kiện liên quan đến bằng phát minh, góp mặt vào cuộc chiến điện thoại thông minh giữa các
công ty công nghệ.

12


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
2.2 LỊCH SỬ PHÁT TRIỂN CỦA HĐH ANDROID
Google có thói quen đặt tên các phiên bản Android theo các món đồ ăn với chữ cái
bắt đầu bằng đầu được xếp theo ký tự alphabet.
 Phiên bản đầu tiên của hệ điều hành Android bắt đầu với bản Android beta vào

tháng 11 2007.
 Android 1.0(23/9/2008).
o Thanh thông báo kéo từ trên xuống.
o Chức năng Widget trên màn hình chính.
o Tích hợp chặt chẽ với Gmail.
o Thiết bị Android đầu tiên được sản xuất là G1 do HTC sản xuất.
o Ứng dụng Android Market tải xuống và cập nhật thông qua ứng dụng Market
o Web browser hiển thị, phóng to và đầy đủ trang web HTML và XHTML – nhiều
trang hiển thị dưới dạng cửa sổ (thẻ)
o Hỗ trợ máy ảnh – tuy nhiên, phiên bản này thiếu tùy chọn thay đổi độ phân giải
trong máy ảnh, cân bằng trắng, chất lượng,..
o Thư mục cho phép nhóm một số ứng dụng vào một thư mục trên màn hình chủ
o Truy cập vào máy chủ web email, hỗ trợ POP3, IMAP4, và SMTP
o Gmail đồng bộ với ứng dụng Gmail.
o Google Contacts đồng bộ với ứng dụng People
o Google Calendar đồng bộ với ứng dụng Calendar
o Google Maps với Street View để xem bản đồ và hình ảnh vệ tinh, cũng như tìm các
doanh nghiệp và hướng dẫn chỉ đường sử dụng GPS
o Google Sync, cho phép đồng bộ hóa dữ liệu trên không của Gmail, People, và
Calendar
o Google Search, cho phép người dùng có thể tìm kiếm trên mạng và ứng dụng điện
thoại, danh bạ, lịch,...
o Google Talk tin nhắn tức thời
o Tin nhắn tức thời, SMS, và MMS
o Máy nghe nhạc, cho phép quản lý, nhập, và phát lại các tập tin media – tuy nhiên,
phiên bản này thiếu hỗ trợ video và stereo bluetooth
o Thông báo xuất hiện trong thanh trạng thái, với tùy chọn cái đặt nhạc chuông, đèn
LED và báo rung
o Voice Dialer cho phép quay số và thay thế điện thoại không cần bấm tên hoặc số
o Wallpaper cho phép người dùng thiết lập hình nền hoặc hình nằm sau màn hình

chính và widgets
o YouTube video player
o Các ứng dụng khác bao gồm: báo thức, máy tính, quay số (điện thoại), màn hình
chính (Launcher), hình ảnh (thư viện), và cài đặt
o Wi-Fi và hỗ trợ bluetooth.

13


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
 Android 1.1 (9/2/2009)
o Cho phép cập nhật cho thiết bị di động qua phương pháp OTA
o Có sẵn chi tiết và đánh giá khi người dùng tìm kiếm doanh nghiệp trên bản đồ
o Màn hình thời gian chờ dài hơn trong cuộc gọi khi sử dụng loa, cộng với khả năng
hiển thị/ẩn bàn phím quay số
o Khả năng lưu tập tin đính kèm trong các tin nhắn
o Hỗ trợ thêm vùng lựa chọn trong bố trí hệ thống
 Android 1.5 Cupcake (30/4/2009)
o Nâng cấp giao diện người dùng
o Mở rộng khả năng cho widget
o Cải tiến clipboard
o Hỗ trợ bàn phím ảo thứ ba với đoán văn bản và từ điển từ các tùy chỉnh
o Hỗ trợ widget – thu nhỏ ứng dụng có thể nhúng vào một số ứng dụng khác (như
màn hình chính) và được cập nhật định kỳ
o Quay video và phát định dạng MPEG-4 và 3GP
o Tự động kết nối và hỗ trợ stereo cho bluetooth (cấu hình A2DP và AVRCP)
o Tính năng sao chép và dán trong trình duyệt web
o Hình ảnh người dùng cho mục ưa thích trong danh bạ
o Ngày/giờ hiện cụ thể cho sự kiện trong nhật ký cuộc gọi, và một chạm truy cập
vào danh bạ từ nhật ký cuộc gọi

o Hiệu ứng chuyển đổi màn hình
o Tự động xoay
o Màn hình khỏi động mới
o Khả năng tải video lên Youtube
o Khả năng tải ảnh lên Picasa
 Android 1.6 Donut (15/9/2009)
o Cải thiện giao diện.
o Hỗ trợ mạng CDMA.
o Hỗ trợ thành phần đồ hoạ độc lập với độ phân giải màn hình khác nhau,cho phép
thiết bị có nhiều độ phân giải hơn là 320x480.
o Tính năng Quick Search Box (Universal Search).
o Nâng cấp giao diện cho Android Market.
o Giao diện camera mới,tích hợp trình xem ảnh tốt hơn.
o Tìm kiếm bằng giọng nói và nhập văn bản tăng cường bao gồm lịch sử đánh dấu,
địa chỉ liên lạc, và các trang web.
o Khả năng cho phép nhà phát triển bao gồm các nội dung của họ trong kết quả.
o Công cụ tổng hợp giọng nói đa ngôn ngữ cho phép một số ứng dụng Android nói
chuỗi văn bản.
o Dễ dàng tìm kiếm và khả năng xem chụp màn hình ứng dụng trên Android Market.
o Hình ảnh, máy ảnh và máy quay tích hợp đầy đủ hơn, với cho phép truy cập máy
ảnh nhanh.
o Cho phép người dùng có thể chọn nhiều ảnh để xóa.
14


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
o Cập nhật công nghệ hỗ trợ cho CDMA/EVDO, IEEE 802.1X, VPNs, và công cụ
text-to-speech.
o Hỗ trợ cho màn hình độ phân giải WVGA.
o Cải thiện tốc độ trong việc tìm kiếm và ứng dụng máy ảnh.

o Mở rộng cử chỉ và thanh công cụ phát triển mới GestureBuilder.
 Android 2.0 và Android 2.1 Eclair (26/10/2009)
o Hỗ trợ nhiều tài khoản người dùng.
o Cải tiến bàn phím ảo.
o Giao diện mới đẹp hơn, sang trọng và gọn gàng hơn.
o Hỗ trợ hình nền động (Live Wallpaper).
o Tính năng chuyển giọng nói thành văn bản.
o Màn hình khoá mới.
o Mở rộng đồng bộ hóa tài khoản, cho phép người dùng có thể thêm nhiều tài khoản.
trên một thiết bị cho đồng bộ của email và danh bạ.
o Hỗ trợ Microsoft Exchange Email, với hộp thư đến trình duyệt email từ nhiều tài
khoản trên một trang.
o Hỗ trợ Bluetooth 2.1.
o Khả năng chọn ảnh danh bạ và chọn để gọi, SMS, hoặc email.
o Khả năng tìm kiếm tất cả tin nhắn SMS và MMS đã lưu trữ, với xóa tin nhắn cũ
nhất trong hội thoại, tự động xóa khi đến giới hạn quy định.
o Nhiều tính năng mới cho máy ảnh, bao gồm hỗ trợ flash, zoom kỹ thuật số, chế độ
cảnh, cân bằng trắng, hiệu ứng màu và canh nét.
o Cải thiện tốc độ đánh máy trên bàn phím ảo, với từ điển thông minh hơn học từ việc
sử dụng từ và bao gồm tên liên lạc như đề xuất.
o Làm mới trình duyệt UI với thu nhỏ đánh dấu, nhấp 2 lần để zoom và hỗ trợ
cho HTML5.
o Tăng cường xem lịch trình, hiển thị tình trạng tham dự cho mỗi khách mời, và khả
năng mời khách mới đến các sự kiện.
o Tối ưu hóa tốc độ phần cứng và cải thiện UI.
o Hỗ trợ màn hình và độ phân giải lớn hơn, với tỷ lệ tương phản tốt hơn.
o Cải thiện Google Maps 3.1.2.
o Lớp MotionEvent tăng cường theo dõi cảm ứng đa điểm.
o Bổ sung live wallpapers, cho phép hình động của màn hình chính chuyển động.


15


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
 Android 2.2 Froyo (20/5/2010)
o Thay đổi giao diện màn hình chính.
o Trình xem ảnh với khả năng hiển thị ảnh 3D cùng nhiều hiệu ứng chuyển động đẹp
mắt.
o Trình duyệt web hỗ trợ Flash.
o Khả năng di chuyển ứng dụng sang thẻ nhớ.
o Tốc độ, bộ nhớ, và tối ưu hóa hiệu suất.
o Cải thiện tốc độ ứng dụng bổ sung, thực hiện thông qua JIT compilation.
o Tích hợp V8 JavaScript engine của Chrome vào ứng dụng trình duyệt.
o Hỗ trợ cho dịch vụ Android Cloud to Device Messaging (C2DM), cho phép thông
báo push.
o Cải thiện hỗ trợ Microsoft Exchange, bao gồm chính sách bảo mật, tự động phát
hiện, đồng bộ lịch và xóa từ xa.
o Cải thiện khởi động ứng dụng với phím tắt đến điện thoại và ứng dụng trình duyệt
o Chức năng USB tethering và Wi-Fi hotspot.
o Tùy chọn vô hiệu hóa truy cập dữ liệu qua mạng di động.
o Cập nhật ứng dụng Market, tính năng tự động cập nhật.
o Chuyển đổi nhanh bàn phím đa ngôn ngữ và từ điển.
o Hỗ trợ cho Bluetooth-trên xe hơi và dock.
o Hỗ trợ password số và chữ.
o Hỗ trợ tập tin tải lên trong ứng dụng trình duyệt.
o Trình duyệt có thể xem tất cá khung của ảnh động thay vì chỉ khung đầu tiên.
o Hỗ trợ cài đặt ứng dụng từ thẻ nhớ mở rộng.
o Hỗ trợ Adobe Flash.
o Hỗ trợ màn hình PPI cao (lên đến 320 ppi), như màn hình 4" 720p.
o Hình ảnh cho phép người dùng xem ngăn sách hình ảnh bằng cách zoom cử chỉ.

 Android 2.3 Gingerbread (6/12/2010)
o Cung cấp cho lập trình viên quyền truy cập thấp nhất nhờ đó nhiều Trò chơi/ứng
dụng native ra đời với tốc độ nhanh hơn,hình ảnh,âm thanh phong phú,chân thực và
đẹp hơn.
o Cập nhật thiết kế giao diện người dùng, tăng độ đơn giản và tốc độ.
o Hỗ trợ cho màn hình có kích thước lớn và độ phân giải (WXGA và cao hơn).
o Hỗ trợ cho thoại internet SIP VoIP.
o Nhanh hơn, nhập văn bản trực quan hơn trong bàn phím ảo, cải thiện độ chính xác,
nội dung đề xuất tốt hơn và chế độ nhập liệu bằng giọng nói.
o Tăng cường tính năng copy/paste, cho phép người dùng chọn từ bằng cách nhấn
giữ, sao chép, và dán.
o Hỗ trợ cho giao tiếp gần (NFC), cho phép người dùng có thể đọc thẻ NFC nhúng
trong một poster, nhãn dán, hoặc quảng cáo.
o Hiệu ứng âm thanh mới như tiếng vang, cân bằng, ảo hoá tai nghe, và tăng độ bass.
o Quản lý tải xuống mới, cho phép người dùng dễ dàng truy cập vào bất kì tập tin tải
xuống nào từ trình duyệt, email, hoặc ứng dụng khác.
o Hỗ trợ cho nhiều máy ảnh trên thiết bị, bao gồm máy ảnh trước nếu có.
16


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
o Hỗ trợ cho phát video WebM/VP8, và mã hoá âm thanh AAC.
o Cải thiện năng lực quản lý với thêm một vài tính năng quản lý ứng cho phép giữ
thiết bị luôn thức trong thời gian dài.
o Tăng cường hỗ trợ phát triển mã nguồn gốc.
o Âm thanh, đồ hoạ, và đầu vào cải tiến cho nhà phát triển trò chơi.
o Đồng thời thu gom rác để tăng hiệu suất.
o Hỗ trợ cho các cảm biến nhiều hơn (như con quay và áp kế).
 Adnroid 3.x Honeycomb dành riêng cho máy tính bảng (10/5/2011)
o Tối ưu hóa hỗ trợ máy tính bảng với giao diện người dùng ba chiều mới.

o Thêm thanh hệ thống, tính năng truy cập nhanh đến thông báo, tình trạng, và nút
điều hướng, có sẵn ở dưới cùng của màn hình.
o Thêm thanh Action, cho phép truy cập các tùy chọn theo ngữ cảnh, điều hướng,
widget, hoặc các loại nội dung ở phía trên cùng của màn hình.
o Đa nhiệm đơn giản – khai thác các ứng dụng gần đây trên thanh hệ thống cho phép
người dùng thấy những hình ảnh đa nhiệm đang được tiến hành và nhảy nhanh từ
một ứng dụng này sang ứng dụng khác.
o Thiết kế lại bàn phím, nhập nhanh hơn, hiệu quả và chính xác hơn trong màn hình
lớn.
o Đơn giản, trực quan hơn giao diện sao chép/dán.
o Nhiều tab trình duyệt thay thế bằng cửa sổ trình duyệt, cộng với tự động điền và chế
độ ẩn danh mới cho phép trình duyệt ẩn danh.
o Truy cập nhanh vào máy tính, lấy nét, flash, zoom, máy ảnh trước, đếm giờ, và
những tính năng khác của máy ảnh.
o Khả năng xem album và bộ sưu tập khác trong chế độ đầy màn hình trong hình ảnh,
với dễ dàng truy cập vào hình ảnh nhỏ khác.
o Danh bạ UI mới và di chuyển nhanh cho phép người dùng tổ chức và định vị danh
bạ.
o Email UI mới cho phép xem và tổ chức tin nhắn hiệu quả hơn, cho phép người dùng
chọn một hoặc nhiều tin nhắn.
o Tăng tốc phần cứng.
o Hỗ trợ cho đa nhân xử lý.
o Khả năng mã hóa tất cả dữ liệu người dung.
o HTTPS stack cải thiện với tên máy chủ chỉ định (SNI).
o Ứng dụng ghi vào dữ liệu thứ cấp (thẻ nhớ trên thiết bị với bộ nhớ lưu trữ nội bộ)
bị vô hiệu hoá bên ngoài thiết kế, ứng dụng thư mục cụ thể, trong khi truy cập vào
các lưu trữ chính nội bộ vẫn được cho phép thông qua một ứng dụng cho phép cấp
riêng biệt.

17



Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
 Android 4.0 Ice Cream Sandwich (16/12/2011)
o Hỗ trợ bộ font roboto tối ưu trên màn hình độ phân giải cao.
o Thanh thông báo được làm mới, đẹp và tiện dụng hơn.
o Tính năng trượt để xoá thông báo, recent app và các tab của trình duyệt.
o Bàn phím được làm mới với tính năng tự động sửa lỗi,việc sao chép, cắt dán văn
bản cũng tốt hơn.
o Tương thích với smartphone và máy tính bảng.
o Trình duyệt web nhanh hơn.
o Tối ưu hoá hiệu suất hoạt động.
o Kéo dài thời thời lượng pin.
 Android 4.1 Jelly Bean (9/7/2012)
o Tính năng Google Now.
o Project Butter mang lại tốc độ mượt mà chưa từng có.
o Khả năng thay đổi kích thước widget.
o Thay đổi tính năng hoàn tất tác vụ.
o Thanh thông báo mới.
o Trình chụp ảnh mới với tính năng chỉnh sửa và chia sẻ ảnh ngay lập tức.
o Tính năng Face Unlock bằng cách chớp mắt.
o Tính năng trứng phục sinh vui nhộn.
o Ứng dụng đọc tin RSS Google Current.
o Nhập liệu bằng giọng nói không cần vào mạng.
o Hỗ trợ chữ Braille cho người khiếm thị.
o Hàng loạt hình nền mới đẹp mắt.
o Google Maps bản mới nhất với khả năng lưu bản đồ offline .
 Android 4.2 Jelly Bean (13/11/2012)
o Widget ngoài lockscreen.
o Thanh Quick Setting mới.

o Giao diện camera mới.
o Bàn phím swipe với khả năng vuốt để tạo văn bản.
 Android 4.3 Jelly Bean (25/7/2013)
o Hỗ trợ nhiều người dùng trên cùng một thiết bị.
o Bluetooth Smart.
o Hỗ trợ đồ hoạ OpenGL ES 3.0.
o Tính năng quay số và bàn phím biểu tượng Emoji.
 Android 4.4 Kitkat (10/2013)
o Lệnh gọi nhanh Google Now.
o Tối ưu hoá bộ nhớ RAM và nâng cao khả năng chạy đa nhiệm với Project Svelte.
o Cho phép ứng dụng chạy toàn màn hình.
o Thanh trạng thái và phím cảm ứng trong suốt.
o Ứng dụng gọi điện thông minh hơn.
o Ứng dụng nhắn tin Google Hangouts.
o Hỗ trợ in ấn tốt hơn với Google Cloud Print.
o Hỗ trợ đầu phát hồng ngoại.
18


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
o Khả năng quay video màn hình.
o Quản lý ứng dụng với Process Stats.
o Cho phép tắt hiệu ứng để tăng tốc độ xử lý.
o Trình chọn tập tin mới.
 Android 5.0 Lollipop(15/10/2014):
o Ngôn ngữ thiết kế Material Design.
o Kéo hai lần để hiện khu vực Quick Settings.
o Đèn flash được tích hợp sẵn.
o Tinh chỉnh thông báo của ứng dụng một cách dễ dàng.
o Ẩn thông báo nhạy cảm khỏi màn hình khóa.

o Tính năng Tap & Go.
o Tìm kiếm nhanh trong trình cài đặt.
o Khóa một ứng dụng trên màn hình.
o Ứng dụng đồng hồ tự đổi màu theo thời gian trong ngày.
o Cuộc gọi sẽ không chen ngang vào ứng dụng đang mở.
 Android 5.1 Lollipop (2/2015):
o Chế độ im lặng (Silent) quay trở lại.
o Cải thiện quản lý RAM.
o Khắc phục lỗi đóng ứng dụng bất ngờ
o Cải thiện quản lý pin.
o Khắc phục lỗi tiêu thụ dung lượng cao bất ngờ khi sử dụng wifi.
o Khắc phục vấn đề với các kết nối không dây.
o Sửa lỗi OK Google.
o Sửa lỗi thông báo.
o Một số vấn đề về âm thanh trên vài thiết bị đã được khắc phục.
o Một số thay đổi trong cách chọn màu cho Material Design.
o Nhiều thay đổi khác sẽ được nói đến trong thời gian tới.
 Ngoài ra Android còn có 2 phiên bản khác là Android TV cho Smart TV và Android
Wear dành cho Smart Watch. Hiện tại phiên bản Android mới nhất là Android L đã
được phát hành cho các nhà phát triển vào tháng 7/2014 và dự kiến phát hành chính
thức vào tháng 10/2014.

19


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
2.3 KIẾN TRÚC HĐH ANDROID
2.3.1 Phần cứng

Android không phải là một phần của phần cứng, mà nó là một phần mềm hoàn

chỉnh.Android có thể được điều chỉnh để làm việc trên bất kì thiết bị phần cứng nào.Có
một số ràng buộc về phần cứng đối với thiết bị có thể chạy được hệ điều hành Android như
sau:
Phần Cứng
Những yêu cầu tối thiểu
ARM-based
Chipset
128MB RAM,258MB Flash External
RAM
Mini hoặc Micro SD
Ổ cứng
QVGA TFT LCD hoặc lớn hơn,16 bit color hoặc tốt hơn
Màn hình chính
2MP CMOS
Navigation Key
Standard mini-B USB interface
USB
1.2 hoặc hơn
Bluetooth
Bảng 2.3.1.1 Những yêu cầu về phần cứng của hđh Android
Những yêu cầu về phần cứng có thể khác nhau tuỳ theo phiên bản Android
2.3.2 Hệ điều hành Android

Có 5 tầng phân biệt trong hệ thống android
 Tầng lõi ARM Linux (Linux Kernel):
Là tầng thấp nhất được xây dựng từ hai thành phần chính là Linux Kernel và bộ vi xử
lý ARM (Acorn RISC Machine).Bộ vi xử lý ARM hoạt động với hiệu suất cao nhưng
tiêu thụ năng lượng rất ít.
Android dựa trên Linux phiên bản 2.6,từ Android 4.0 trở về sau là phiên bản 3.x.
Linux kernel phiên bản 2.6 là phiên bản có tính ổn định cao.Sự kết hợp giữa hai thành

phần này nhằm giải quyết phần nào giới hạn nguồn năng lượng sử dụng và tối ưu việc
sử dụng các tài nguyên trong thiết bị.
Nền tảng Linux Kernel 2.6 chứa những drivers để điều khiển phần cững như keypad,
wifi, camera, audio, màn hình,v.v...Đây là trung tâm điều khiển của Android.Các giải
thuật quản lý tài nguyên, chuyển đổi qua lại giữa các tác vụ phân chia quyền, giải quyết
tranh chấp được cài đặt trong kernel.Tuy nhiên lập trình viên sẽ không lập trình trực
tiếp trên tầng này.
 Tầng thư viện (Libraries):
Chứa mã nguồn mở cấp thấp cho những chức năng cơ bản như: mã hoá và giải mã âm
thanh, hình ảnh kĩ thuật số,trình bày các giao diện đồ hoạ, bảo mật lưu lượng TCP/IP
cũng như các thành phần cho trình duyệt web, hỗ trợ truy xuất cơ sở dữ liệu
(SQLite),v.v...
Đây là tầng chứa các thư viện C/C++ được gọi thông qua giao diện java.Tầng này gồm
thư viện surface (tạo các cửa sổ giao diện),OpenGL (hỗ trợ xây dựng ứng dụng 2D và
3D),Media Framework (hỗ trợ xây dựng các ứng dụng về âm thanh hình ảnh),SSL
(cung cấp các chức năng bảo mật thiết bị), SQLite (cơ sở dữ liệu mã nguồn mở được
nhúng trong thiết bị), webkit (hỗ trợ hiển thị nội dung website),v.v...
20


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
 Tầng máy ảo Android (Android Runtime):
Đây là một phần mềm dùng để chạy các ứng dụng trên thiết bị Android, bao gồm một
tập các thư viện lõi(core libraries) cung cấp hầu hết các chức năng trong thư viện lõi
của ngôn ngữ lập trình Java và máy ảo Dalvik.Mỗi ứng dụng android sẽ chạy trên một
tiến trình dành riêng cho nó,với một máy ảo Dalvik riêng cũng được thiết lập dành riêng
cho mỗi ứng dụng. Dalvik được viết để một thiết bị có thể chạy nhiều máy ảo cùng lúc
hiệu quả.Máy ảo Dalvik thực thi các tập tin .dex,là loại tập tin được đóng gói từ các file
.class giúp tối ưu bộ nhớ, quản lý tiến trình và quản lý bộ nhớ hiệu quả, máy ảo này
cũng sử dụng các chức năng do Linux kernel cung cấp.

 Tầng khung ứng dụng Android (Android Application Framework):
Tầng này định nghĩa Android API, cung cấp bộ công cụ ở mức cao để các lập trình viên
nhanh chóng xây dựng ứng dụng.
Chứa các thư viện java hỗ trợ người dùng giao tiếp với tầng thư viện và tầng máy
ảo.Một phần của tầng này do Google cung cấp sẵn,một phần do lập trình viên tạo
ra.Trong tầng này thì thành phần quan trọng nhất là Activity Manager vì nó quản lý chu
kì sống của Activity.
 Activity Manager:quản lý chu trình sống của các Activity trong ứng dụng
Android.
 Telephony Manager:cung cấp thu viện để truy xuất đến các dịch vụ điện thoại
cũng như là thông tin thuê bao.
 View System:xử lý giao diện trong ứng dụng android.
 Location Manager:cung cấp thư viện hỗ trợ người dùng định vị vị trí của thiết
bị.
 Tầng ứng dụng lõi Android (Applications):
Đây là tầng cao nhất và ứng dụng của lập trình viên sẽ nằm ở tần này. Google đã viết
sẵn một số thư viện tiện ích trong tầng này để việc truy xuất thông tin ở các tầng dưới
thuận tiện,linh hoạt và hiệu quả nhất.
Bao gồm các những ứng dụng cơ bản hỗ trợ thêm cho người lập trình như:Webkit
browser, Google Calendar, Gmail, Map Application, SMS Messenger, Email Client
,v.v...

21


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

APPLICATIONS
Home


Contacts

Phone

.......

Browser

APPLICATION
FRAMEWORK
Activity
Windows
Content
View System
Manager
Manager
Providers
Telephony
Package
Resoure
Manager
Manager
Manager
Location Manager
Notification Manager
LIBRARIES
Surface
Manager
OpenGL ES


Media
Framework
Free Type

SGL

SQLite
Webkit
Iibc

SSL

ANDROID
RUNTIME
Core Libraries
Dalvik Virtual
Machine

LINUX KERNEL
Display
Driver
Keypad
Driver

Camera Driver
Wifi Driver

Flash Memory
Driver
Audio Driver


Binder (IPC)
Driver
Power
Management

Hình 2.3.2.1 Các Tầng Của Hệ Điều Hành Android
2.3.3 Kết nối mạng

Android hỗ trợ giao tiếp không dây bằng cách sử dụng:
 Mạng wifi 802.11:Là hệ thống mạng không dây sử dụng sóng vô tuyến giống như điện
thoại di động,truyền hình và radio với băng tầng 2,4 3,6 và 5 Ghz.
 Công nghệ GSM (The Global System Mobile Communication): là hệ thống mạng
tế bào sử dụng kỹ thuật TDMA (Time Division Multi Access) – đa truy cập theo thời
gian. Mỗi cuộc gọi được phát triển trên tầng số chung nhưng theo các khoảng thời gian
khác nhau. Khoảng thời gian này đủ bé để người sử dụng không nhận thấy sự rời rạc
khi nghe người khác nói.Công nghệ dành cho mạng 2G và hoạt động ở băng tầng
900MHz hay 1800MHz.

22


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
 EDGE (Enhanced Data Ratesn for GSM Evolution): Còn được gọi là EGPGS,là một
công nghệ được phát triển từ GPRS,cho phếp truyền dữ liệu với tốc độ 384 kbit/s cho
người dùng cố định hoặc di chuyển chậm và 144 kbit/s cho người dùng di chuyển với
tốc độ cao. EDGE được biết đến như một công nghệ 2,75G.
 3G:là công nghệ truyền thông thứ ba, cho phép truyền dữ liệu thoại và dữ liệu ngoài
thoại (tải dữ liệu,gửi email,tin nhắn nhanh,hình ảnh).Công nghệ này tăng băng thông
và hỗ trợ đa dạng ứng dụng hơn trong đó có dịch vụ video call.

 4G LTE:Là công nghệ thứ tư của công nghệ không dây.4G được thiết kế nhằm tăng
tốc độ cho người dùng điện thoại thông minh và máy tính bảng với 100Mbps dowload
và 50Mbps upload. Hầu hết điện thoại thông minh hỗ trợ 4G đều chạy hệ điều hành
Android.
2.3.4 Bảo mật

Android là một hệ thống đa tiến trình, trong đó mỗi ứng dụng chạy riêng biệt trong
một tiến trình riêng biệt dành cho nó. Bảo mật giữa ứng dụng và hệ thống được thực thi ở
mức tiến trình thông qua những tiêu chuẩn của Linux. Mỗi ứng dụng trong Android được
gán một ID và mặc định khi ứng dụng chạy sẽ không có bất cứ tiến trình hay hệ thống khác
can thiệp vào nó.
Việc cho phép trao đổi thông tin và tương tác qua lại giữa các tiến trình phải được định
nghĩa trước trong ứng dụng đó để khi cài đặt, hệ điều hành sẽ nhận diện được thông tin này

23


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android

Nền tảng
Android
Ứng Dụng
Android A

Ứng Dụng
Android B

Ứng Dụng
Android C


Máy ảo
DALVIK

Máy ảo
DALVIK

Máy ảo
DALVIK

Người dùng
Linux B

Người dùng
Linux C

Người dùng
Linux A

Hệ điều hành Linux
2.6
Bảo Mật
Quản
lý bộ
nhớ

Quản

tiến
trình


Ngăn
xếp
mạng

Nhập
Xuất

Quản

nguồn
năng
lượng

Bluetooth, Camera,
Audio, Telephony,
Flash,
cảm ứng, v.v...

Phần cứng vật lý
Hình 2.3.4.1 Sơ đồ hoạt động trong thiết bị Android
2.3.5 Các ứng dụng có sẵn trên nền tảng Android:










Một chương trình kiểm tra email tương thích với Gmail.
Chương trình quản lý tin nhắn SMS.
Phiên bản thu nhỏ của Google Map dành cho điện thoại.
Trình duyệt web sử dụng webkit.
Chương trình tán gẫu (chat).
Trình đa phương tiện (chơi nhạc, video, xem ảnh).
Android Market cho phép người dùng tải và cài đặt ứng dụng từ market.
24


Tìm hiểu và lập trình trò chơi Học Từ Vựng trên hệ điều hành Android
2.4 PHÁT TRIỂN ỨNG DỤNG TRÊN NỀN TẢNG ANDROID.
2.4.1 Những yêu cầu để phát triển ứng dụng trên nền tảng Android:

 Kiến thức lập trình ngôn ngữ Java.
 Kiến thức về XML.
 Một máy tính chạy hệ điều hành x86 như Windows, Linux hay MAC có cài đặt môi
trường phát triển java (JDK).
 Ngoài ra còn cần phải có một thiết bị chạy hệ điều hành Android để chạy thử ứng dụng.
2.4.2 Công cụ và môi trường phát triển ứng dụng Android.

 JDK (Java Development Kit):là môi trường để viết các ứng dụng java.
 Eclipse: phần mềm miễn phí dùng để viết ứng dụng java.
 Android SDK (Software Developer Kit): là bộ công cụ dùng để phát triển ứng dụng
cho hệ điều hành Android.
 ADT Plugin (Android Development Tools): là một phần mở rộng của Eclipse chứa
những thành phần trong Android SDK
 Google còn phát hành một bộ công cụ lập trình Android Studio giúp các lập trình viên
dễ dàng thiết kế và xây dựng ứng dụng.
 Ngoài ra phiên bản 2015 của Visual Studio cũng hỗ trợ bộ công cụ lập trình Android.

2.5 SO SÁNH GIỮA CÁC HỆ ĐIỀU HÀNH DI ĐỘNG
Hiện nay có 3 hệ điều hành di động phổ biến nhất chiếm đến 96,9% là Android, IOS
và Windows Phone.Mỗi hệ điều hành đều có những ưu và nhược điểm khác nhau.
 Giống nhau:
o Đều là những phần mềm điều hành, quản lý các tài nguyên phần cứng cũng như
phần mềm của thiết bị.
o Đều là môi trường giao tiếp giữa người dùng và phần cứng của thiết bị.
o Đều bị hạn chế về phần cứng của thiết bị như: màn hình, thời lượng pin, vi xử lý,
bộ nhớ,v.v...

25


×