Tải bản đầy đủ (.docx) (79 trang)

đồ án tốt nghiệp xây dựng ứng dụng tư vấn dinh dưỡng và sức khỏe trên nền tảng 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 (1.91 MB, 79 trang )



Y
DỰ
NG
ỨN
G
DỤ
NG

VẤ
N
DI
NH

ỠN
G

SỨ
C
KH
ỎE
TR
ÊN
AN
DR
OI
D
Ni
ên
kh


óa
:
20
1120
15

VIỆN ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN

NGUYỄN QUANG SƠN
GIÁP VINH QUANG

XÂY DỰNG ỨNG DỤNG TƯ VẤN DINH DƯỠNG VÀ SỨC KHỎE TRÊN N

Chuyên ngành: Công nghệ thông tin

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

Hà Nội- Năm 2015

Hà Nội - Năm 2012


VIỆN ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN

NGUYỄN QUANG SƠN
GIÁP VINH QUANG

XÂY DỰNG ỨNG DỤNG TƯ VẤN DINH DƯỠNG VÀ SỨC KHỎE TRÊN N


Chuyên ngành: Công nghệ thông tin
Giảng viên hướng dẫn: PGS.TS Vũ Chấn Hưng

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

Hà Nội- Năm 2015

Hà Nội - Năm 2012


VIỆN ĐẠI HỌC MỞ HÀ NỘI

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA CÔNG NGHỆ THÔNG TIN

Độc lập – Tự do – Hạnh phúc

Hà Nội, ngày 25 tháng 5 năm 2015

NHIỆM VỤ CỦA ĐỒ ÁN TỐT NGHIỆP
Họ và tên: Giáp Vinh Quang

Giới tính: Nam

Ngày sinh: 28/01/1993

Mã số: 11A100104


Họ và tên: Nguyễn Quang Sơn

Giới tính: Nam

Ngày sinh: 11/12/1992

Mã số: 11A100108

Chuyên ngành: Công nghệ thông tin
1.

TÊN ĐỀ TÀI
Xây dựng ứng dụng Tư vấn dinh dưỡng và sức khỏe trên nền tảng
Android

2.

NHIỆM VỤ VÀ NỘI DUNG
 Xây dựng ứng dụng trên nền Android cung cấp thông tin về dinh dưỡng
và sức khỏe theo hướng phục vụ cho mọi cá nhân, trên nền tảng
Android, dành cho các thiết bị sử dụng hệ điều hành Android ….
 Ứng dụng cho phép người dùng tìm kiếm tra cứu thành phần dinh
dưỡng của các loại thực phẩm hằng ngày, cung cấp thông tin tư vấn về
sức khỏe, hướng dẫn các bài tập thể hình.
 Có thể chạy được trên tất cả các thiết bị di động thông minh, máy tính
bảng… sử dụng hệ điều hành Android.
 Sử dụng ngôn ngữ Java, Json, PHP.

3.
4.


NGÀY GIAO NHỆM VỤ: 23 – 1 - 2015
NGÀY HOÀN THÀNH NHIỆM VỤ: 10 – 5 – 2015


5.

CÁN BỘ HƯỚNG DẪN: PGS.TS Vũ Chấn Hưng

CÁN BỘ HƯỚNG DẪN

KHOA CÔNG NGHỆ THÔNG TIN


PHÂN CÔNG NHIỆM VỤ
GIÁP VINH QUANG

NGUYỄN QUANG SƠN

 Phân tích và thiết kế hệ thống
 Xây dựng giao diện ứng dụng trên

 Phân tích và thiết kế hệ thống
 Xây dựng cơ sở dữ liệu lưu trữ cho

thiết bị android
 Tổng hợp và xây dựng báo cáo đồ
án

hệ thống trên mySQL Server

 Xây dựng ứng dụng phía client
chạy trên thiết bị android


LỜI CẢM ƠN
Để hoàn thành đồ án “Xây dựng ứng dụng tư vấn dinh dưỡng và sức
khỏe trên nền tảng android”, trước tiên em xin gửi lời cảm ơn sâu sắc đến
thầy giáo Vũ Chấn Hưng – giảng viên khoa Công nghệ thông tin - Viện Đại
học Mở Hà Nội, đã tận tình hướng dẫn và giúp đỡ em trong suốt quá trình
nghiên cứu, xây dựng và thực hiện đồ án này.
Em xin chân thành cảm ơn Ban giám hiệu Khoa Công nghệ Thông tin
– Viện Đại học Mở Hà Nội, cùng các quý thầy cô đã hỗ trợ tạo nhiều điều
kiện thuận lợi cho em trong quá trình học tập cũng như quá trình thực hiện đồ
án này.
Trong quá trình thực hiện đồ án, em đã học hỏi thêm được rất nhiều
kiến thức. Mặc dù đã rất cố gắng và nỗ lực hết sức để hoàn thành tốt đồ án
nhưng không thể tránh khỏi những sai sót. Kính mong quý thầy cô đóng góp ý
kiến để đồ án của em có thể hoàn thiện tốt hơn.
Hà Nội, tháng 5 năm 2015
Sinh viên thực hiện
Nguyễn Quang Sơn - 11B2
Giáp Vinh Quang -11B2


MỤC LỤC


TÓM TẮT ĐỒ ÁN

Họ và tên:


GIÁP VINH QUANG
NGUYỄN QUANG SƠN

Chuyên ngành:

Công nghệ Thông tin

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

PGS.TS. Vũ Chấn Hưng

Khóa: 11

Tên đề tài:
Xây dựng ứng dụng Tư vấn dinh dưỡng và sức khỏe trên nền tảng Android.

Tóm tắt:
Ứng dụng Tư vấn dinh dưỡng và sức khỏe được xây dựng dành cho
các thiết bị di động, điện thoại thông minh, máy tính bảng sử dụng hệ điều
hành Android. Xuất phát từ những nhu cầu thiết yếu đối với mọi người.
Ứng dụng được viết bằng ngôn ngữ Java, MySQL, PHP; ứng dụng các
công nghệ JSON. Hỗ trợ thiết kế và xây dựng giao diện Adobe Photoshop.
Ứng dụng là một phần mềm tiện ích mang tính thực tiễn cao, hướng
đến mọi đối tượng. Ứng dụng cung cấp thông tin tư vấn về sức khỏe để xem
liệu mình ăn uống có khoa học hay chưa, có đủ chất hay không. Ưng dụng
cho phép người dùng biết cách tính toán xem làm thế nào để biết hôm nay
mình đã ăn thừa hay thiếu chất.
Ngoài ra, ứng dụng còn dành cho đối tượng những người tập thể hình,
cung cấp các bài tập hướng dẫn.



DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

STT Ký hiệu, chữ viết tắt

Tên đầy đủ

Dịch ra tiếng việt

JavaScript Object
Noattion
Extensible Markup
Language
Unified Modeling
Language

Ký hiệu đối tượng
JavaScript
Ngôn ngữ truy vấn có
cấu trúc
Ngôn ngữ mô hình
hóa thống nhất
Chương trình xử lí
ảnh
Hệ quản trị cơ sở
dữ liệu tự do
nguồn mở

1


JSON

2

XML

3

UML

4

PTS

Adobe Photoshop

5

MYSQL

Structured Query
Language

6

CSDL

7


PHP

8

SDK

9

API

10

HTTP

11

USPD , RUP,UP

Cơ sở dữ liệu
Hypertext
Preprocessor
Software
Development Kit
Application
Programming
Interface
HyperText Transfer
Protocol

Ngôn ng ữ lập trình

kịch bản
Bộ công cụ phát triển
phần
mềm
Giao diện lập trình
ứng dụng
Giao thức truyền tải
siêu văn bản
Quy trình hợp nhất


DANH MỤC CÁC HÌNH VẼ

DANH MỤC CÁC BẢNG


12

Chương 1
TỔNG QUAN ĐỀ TÀI
1.1.

Giới thiệu đề tài
Hàng ngày, do bận rộn, chúng ta thường không quan tâm và để ý đến

các thói quen ăn uống, để xem liệu mình ăn uống có khoa học hay chưa, có đủ
chất hay không? Và đôi khi, chúng ta cũng lầm tưởng rằng mình đang có một
thói quen ăn uống tốt. Tuy nhiên, việc tìm hiểu xem trong một ngày, những
thứ chúng ta ăn có cung cấp đủ hàm lượng dinh dưỡng cần thiết cho cơ thể
không lại là điều mà rất nhiều người chưa để ý tới, hoặc họ chưa biết cách

tính toán xem làm thế nào để biết hôm nay mình đã ăn thừa hay thiếu chất?
Chính vì vậy, ngày nay, khi cuộc sống ngày càng được cải thiện, vấn đề quản
lý dinh dưỡng đã trở thành một nhu cầu thiết yếu đối với con người.
1.2.

Mục đích đề tài
Mục đích của đề tài là xây dựng ứng dụng tư vấn dinh dưỡng và sức

khỏe chạy trên các thiết bị di động trên nền tảng Android, nhằm mục đích xây
dựng và phát triển một ứng dụng hỗ trợ phục vụ cho các đối đối tượng có nhu
cầu tư vấn về dinh dưỡng và sức khỏe một cách nhanh chóng và chính xác.
Một trong các mục đích khác là ứng dụng cung cấp hệ thống hỗ trợ
riêng cho người tập thể hình trên website online.


13

1.3.
Mục tiêu đề tài
1.3.1. Lý thuyết
 Nghiên cứu công cụ đồ họa như: photoshop, corel draw
 Nghiên cứu lập trình trên hệ điều hành android.
 Nghiên cứu ngôn ngữ lập trình java.
 Nghiên cứu xây dựng giao diện với xml trong android.
 Nghiên cứu hệ quản trị cơ sở dữ liệu MySQL, SQLite Administator
 Nghiên cứu html, css, javascript.
1.3.2. Thực tiễn

Mục tiêu của đề tài là xây dựng ứng dụng cung cấp thông tin tư vấn sức
khỏe và dinh dưỡng trên các thiết bị di động với kho dữ liệu phong phú được

lưu trữ trên server. Bên cạnh đó, ứng dụng có cung cấp hệ thống hỗ trợ riêng
cho người tập thể hình trên website online.
Xây dựng phần mềm phải đảm bảo được những yêu cầu sau:
Do thời gian thực hiện cũng như năng lực có hạn nên ứng dụng được
xây dựng chỉ tập trung vào những phần sau:
 Hệ thống được cài đặt trên các thiết bị di động cài đặt hệ điều hành
Android
 Xây dựng hệ thống kết nối client – server
 Hệ thống hỗ trợ tính năng nhiều người truy cập cùng lúc một lúc
 Cho phép người dùng tìm kiếm tư vấn về sức khỏe cũng như thành phần
dinh dưỡng của các loại thực phẩm hằng ngày.
 Cho phép tính toán Basal metabolic rate (BRM) hay còn gọi là lượng
năng lượng tiêu thụ của người dùng.
 Cho phép người dùng truy cập website online hỗ trợ dành cho người tập
gym.
1.3.3. Cách thức hoạt động

Để bắt đầu sử dụng, người sử dụng không cần phải sử dụng tài khoản:
 Ứng dụng hiện ra các tư vấn về sức khỏe và người sử dụng sẽ chọn loại tư
vấn mình muốn tìm. Sau khi chọn, ứng dụng sẽ hiển thị danh sách các tư
vấn cụ thể và chính xác nhất.


14

 Khi người dùng muốn tra cứu thành phần dinh dưỡng của các loại thực

phẩm, ứng dụng sẽ hiển thị danh sách từng loại thực phẩm kèm theo đó là
chi tiết thành phần dinh dưỡng của từng thực phẩm. Ứng dụng cũng cho
phép người dùng tìm kiếm theo tên thực phẩm.

 Người sử dụng có thể tính lượng năng lượng tiêu thụ BRM của mình bằng
cách nhập các thông tin: chiều cao, cân nặng, giới tính.
 Người sử dụng có thể truy cập hướng dẫn Gym cho nam hoặc nữ, ứng







dụng sẽ hiển thị website online hướng dẫn tập gym với các bài tập cụ thể.
1.3.4. Các bước nghiên cứu
Phân tích yêu cầu
Lựa chọn công nghệ
Nghiên cứu cơ sở lý thuyết của công nghệ đã chọn
Áp dụng lý thuyết vào xây dựng ứng dụng thực tiễn
Kiểm tra, tham khảo các ứng dụng khác để tối ưu hóa ứng dụng
1.3.5. Bố cục đề tài







Tổng quan về đề tài
Công nghệ sử dụng
Phân tích và thiết kế hệ thống
Hướng dẫn sử dụng
Kết luận

Chương 2
CÔNG NGHỆ SỬ DỤNG
2.1. Hệ điều hành Android
2.1.1. Giới thiệu về nền tảng Android


15

Hình 2.1: Hệ điều hành 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


16

các ứng dụng để mở rộng chức năng của thiết bị, bằng 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.

Số lượt tải ứng dụng từ Google Play, cửa hàng ứng dụng chính của Android,
ước tính khoảng 25 tỷ lượt.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, đượ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, có giá rẻ chạy trên các thiết bị công nghệ cao. Kết quả là điện
thoại và máy tính bảng Android chiếm 75% thị phần điện thoại thông minh
trên toàn thế giới vào thời điểm quý 3 năm 2012, với tổng cộng 500 triệu thiết
bị đã được kích hoạt và 1,3 triệu lượt kích hoạt mỗi ngày.

Hình 2.2:Sự tăng trưởng của các nền tảng di động.
* Các thành phần trong ứng dụng Android


17

Android project là một hệ thống thư mục file chứa toàn bộ source code, tài
nguyên… mà mục đích cuối cùng là để đóng gói thành một file .apk duy nhất.
Trong một thư mục project, có một số thành phần (file, thư mục con) được
tạo ra mặc định, còn lại phần lớn sẽ được tạo ra sau nếu cần trong phát triển
ứng dụng.

Hình 2.3. Các thành phần trong một Android project


18

 Src/: Chứa toàn bộ source code (file .java hoặc .aidl)
 Bin/: Thư mục chứa file Output sau khi build. Đây là nơi bạn có thể

tìm thấy file .apk

 Gen/: Chứa file .java tạo ra bởi ADT plug-in, như là file R.java hoặc
các giao diện tạo ra từ file AIDL.
 Res/: Chứa các tài nguyên (resource) cho ứng dụng chẳng hạn như
file hình ảnh, file layout, các chuỗi (string)…Dưới đây là các thư mục
con của nó.
• Anim/: Chứa các file .xml dùng cho việc thiết lập các hiệu ứng
động(animation).
• Color/: Chứa các file .xml dùng định nghĩa màu sắc.
• Drawable/: Chứa hình ảnh (png, jpeg, gif), file .xml định nghĩa





cách vẽ các loại hình dạng khác nhau (shape).
Layout/: Chứa file .xml dùng để dựng giao diện người dùng.
Menu/: Chứa file .xml quy định application menu.
Raw/: Chứa các file media, chẳng hạn như .mp3, .ogg
Values/: Chứa file .xml định nghĩa các giá trị. Khác với các
resource trong thư mục khác, resource ở thư mục này khi định
danh trong lớp R thì sẽ không sử dụng file name để định danh mà

sẽ được định danh theo quy định bên trong file .xml đó.
• Xml/: Dùng chứa các file .xml linh tinh khác, chẳng hạn như
file .xml quy định app widget, search metadata,…
 Libs/: Chứa các thư viện riêng.
 AndroidManifest.xml/: File kiểm soát các thành phần trong ứng dụng
như: activity, service, intent, receiver… tương tác với nhau, cách ứng
dụng tương tác với ứng dụng khác, cũng như đăng kí các quyền hạn
về sử dụng tài nguyên trong máy.

 Build.properties/: Tùy chỉnh các thiết lập cho hệ thống build, nếu bạn
sử dụng Eclipse thì file này không cần thiết.
 Build.xml/: Chỉ sử dụng khi dùng dòng lệnh để kiến tạo project.


19

 Default.properties/: File này chứa các thiết lập cho project, chẳng hạn

như build target, min SDK version…(tốt hơn hết là không nên chỉnh
sửa file này bằng tay)
2.1.2. Ngôn ngữ Java
Java là công nghệ xây dựng các phần mềm ứng dụng có vị trí rất lớn
trong những năm cuối thế kỉ 20 đầu thế kỉ 21.Nó được coi là công nghệ mang
tính cách mạng và khả thi nhất trong việc tạo ra các ứng dụng có khả năng chạy
thống nhất trên nhiều nền tảng mà chỉ cần biên dịch một lần.
Ngôn ngữ Java xuất hiện đầu tiên năm 1992 như là một ngôn ngữ dùng
trong nội bộ tập đoàn Sun Microsoftsystems. Sau này không chỉ là một ngôn
ngữ, Java còn là một nền tảng phát triển và triển khai ứng dụng trong đó có
máy ảo Java với bộ thông dịch có vai trò trung tâm.
2.1.2.1. Thông dịch
Java là một ngôn ngữ lập trình vừa biên dịch vừa thông dịch.Chương
trình nguồn viết bằng ngôn ngữ lập trình Java có đuôi *.java đầu tiên được
biên dịch thành tập tin có đuôi *.class và sau đó sẽ được trình thông dịch thông
dịch thành mã máy.
2.1.2.2. Độc lập nền
Một chương trình viết bằng ngôn ngữ Java có thể chạy trên các máy
tính có hệ điều hành khác nhau (Window, Unix, Linux, …) miễn sao ở đó có
cài đặt máy ảo java (Java Virtual Machine).
2.1.2.3. Hướng đối tượng

Hướng đối tượng trong Java tương tự như C++, nhưng Java là một
ngôn ngữ lập trình hướng đối tượng hoàn toàn. Tất cả mọi thứ đề cập đến
trong Java đều liên quan đến các đối tượng được định nghĩa trước, thậm chí
hàm chính của một chương trình viết bằng Java (đó là hàm main) cũng phải đặt
bên trong một lớp. Hướng đối tượng trong Java không có tính đa kế thừa


20

(multi inheritance) như trong C++ mà thay vào đó Java đưa ra khái niệm
interface để hỗ trợ tính đa kế thừa. Vấn đề này sẽ được bàn chi tiết trong phần
sau.
2.1.2.4. Đa nhiệm - đa luồng (MultiTasking - Multithreading)
Java hỗ trợ lập trình đa nhiệm, đa luồng cho phép nhiều tiến trình, tiểu
trình có thể chạy song song cùng một thời điểm và tương tác với nhau.
2.1.2.5. Khả chuyển
Chương trình ứng dụng viết bằng ngôn ngữ Java chỉ cần chạy được
trên máy ảo Java là có thể chạy được trên bất kỳ máy tính dùng hệ điều hành
nào có máy ảo Java (Viết một lần, chạy mọi nơi).
2.1.2.6. Hỗ trợ mạnh cho việc phát triển ứng dụng
Công nghệ Java phát triển mạnh mẽ nhờ vào “đại gia Sun Microsystem”,
công ty đã phát minh ra ngôn ngữ Java. Công nghệ Java cung cấp nhiều công
cụ, thư viện lập trình phong phú hỗ trợ cho việc phát triển nhiều loại hình ứng
dụng khác nhau. Công nghệ Java được chia làm ba bộ phận cụ thể như sau:


J2SE (Java 2 Standard Edition): Gồm các đặc tả, công cụ, API của nhân Java
giúp phát triển các ứng dụng trên desktop và định nghĩa các phần thuộc nhân

của Java.

• J2EE (Java 2 Enterprise Edition): Gồm các đặc tả, công cụ, API mở rộng
J2SE để phát triển các ứng dụng qui mô xí nghiệp, chủ yếu để chạy trên máy
chủ (server). Bộ phận hay được nhắc đến nhất của công nghệ này là công
nghệ Servlet/JSP: sử dụng Java để làm các ứng dụng web.
• J2ME (Java 2 Micro Edition): Gồm các đặc tả, công cụ, API mở rộng để phát
triển các ứng dụng Java chạy trên điện thoại di động, thẻ thông minh, thiết bị
điện tử cầm tay, robo và những ứng dụng điện tử khác.
Java Development Kit (JDK - Bộ công cụ cho người phát triển ứng dụng
bằng ngôn ngữ lập trình Java) là một tập hợp những công cụ phần mềm được
phát triển bởi Sun Microsystems dành cho các nhà phát triển phần mềm,


21

dùng để viết những applet Java hay những ứng dụng Java.Bộ công cụ này
được phát hành miễn phí, gồm có trình biên dịch, trình thông dịch, trình giúp
sửa lỗi (debugger), trình chạy applet và tài liệu nghiên cứu.
Kể từ khi ngôn ngữ Java ra đời, JDK là bộ phát triển phần mềm thông
dụng nhất cho Java. Ngày 17 tháng 11 năm 2006, hãng Sun tuyên bố JDK sẽ
được phát hành dưới giấy phép GNU General Public License (GPL), JDK trở
thành phần mềm tự do. Việc này đã được thực hiện phần lớn ngày 8 tháng 5
năm 2007.
2.1.3. Ngôn ngữ XML
XML, hoặc Extensible Markup Language (ngôn ngữ đánh dấu mở
rộng), là một ngôn ngữ đánh dấu mà ta có thể sử dụng để tạo ra thẻ riêng của
mình. Nó được tạo nên bởi Liên minh mạng toàn cầu nhằm khắc phục những
hạn chế của HTML - ngôn ngữ đánh dấu siêu văn bản, cơ sở của mọi trang
Web. Giống như HTML, XML cũng được dựa trên SGML - Standard
Generalized Markup Language. Các đặc điểm của XML:
• Dễ dàng viết được các chương trình xử lý dữ liệu.

• Tài liệu XML dễ đọc và có tính hợp lý cao.
• XML dễ dàng được sử dụng trên Internet.
• XML hỗ trợ nhiều ứng dụng.
• Không đặt nặng tính hình thức trong nội dung thẻ.
 Các loại văn bản XML:
• Văn bản không hợp lệ: không theo nguyên tắc cú pháp được
quy định bởi đặc tính kỹ thuật XML.
• Văn bản hợp lệ: tuân theo nguyên tắc cú pháp XML và quy
định trong DTD hoặc lược đồ.
• Văn bản chuẩn: tuân theo quy tắc cú pháp XML nhưng không
có DTD hoặc lược đồ.
 Một tài liệu XML được chia thành hai phần chính:
• Phần khai báo: khai báo cho tài liệu XML.
- Khai báo phiên bản, bảng mã ký tự sử dụng
trong tài liệu.


22

Định nghĩa kiểu cho tài liệu
• Phần thân: chứa nội dung dữ liệu
- Gồm một hay nhiều phần tử,
- Mỗi phần tử được chứa trong một cặp thẻ,
- Phần tử đầu tiên là phần tử gốc (root element).
-

2.1.4. Các công cụ hỗ trợ lập trình trên nền Android
2.1.4.1. Máy ảo Dalvik
Các ứng dụng Android và các thành phần cơ bản hầu hết được viết
bằng Java. Thay vì sử dụng máy ảo Java, Android sử dụng máy ảo riêng. Máy

ảo của Android được thiết kế và tối ưu cho các hệ thống nhỏ, không tương
thích với máy ảo Java của Java ME. Những hệ thống nhỏ này có dung lượng
RAM nhỏ, CPU chậm và hầu hết không có chỗ để tráo đổi dữ liệu bù đắp cho
dung lượng bộ nhớ nhỏ. Đây là điểm khác biệt giữa Android với các hệ điều
hành cho di động khác như Symbian, iOS của Apple, webOS của Palm. Ngôn
ngữ lập trình được sử dụng chính là C, C++ và objective C, trong khi với
webOS sử dụng chủ yếu ngôn ngữ web như Javascript hay HTML.
Trình biên dịch byte code là máy ảo Dalvik. Thay vì sử dụng dạng
byte code thông thường, Dalvik có định dạng riêng để phù hợp với yêu cầu
đối với thiết bị cho Android. Mã của Android nhỏ hơn so với mã của Java và
file dex được tạo ra cũng nhỏ.
2.1.4.2. Android SDK
Android SDK là bộ công cụ phát triển phần mềm cho phép lập trình
viên tạo ra các ứng dụng cho các thiết bị sử dụng nền tảng Android. Android
SDK bao gồm nền tảng Android, các công cụ, chương trình mẫu và các tài
liệu hỗ trợ. Nó cũng là thành phần bổ sung trong bộ phát triển Java và có thể
tích hợp vào Eclipse.
Android chứa các gói hỗ trợ các chức năng tính toán cơ bản như quản
lí xâu, quản lí vào ra, tính toán từ các gói cơ bản trong Java:
• Java.lang – lớp ngôn ngữ cơ bản của java.
• Java.io – quản lí vào ra.


23

Java.net – quản lí kết nối mạng.
Java.text – tiện ích xử lí văn bản.
Java.math – hỗ trợ tính toán.
Java.sercurity – quản lí các thành phần bảo mật.
Java.xml – các lớp về XML.

org.apache – các lớp liên quan HTTP.
Ngoài ra Android có các lớp riêng như:
android.app – truy cập mô hình ứng dụng Android.
android. bluetooth – chức năng bluetooth của Android.
android.content - quản lí dữ liệu trong Android.
android.net – chứa các lớp Uri dùng để truy cập dữ liệu.
android.graphics – các thành phần đồ hoạ.
android .location – các dịch vụ liên quan đến vị trí (GPS)
android.opengl – các lớp OpenGL.
android.view – chứa các thành phần giao diện.
android.webkit – chức năng của trình duy ệt web.
android.widget – các thành phần giao diện khác.
đây chúng ta xem xét lập trình Android với Eclipse vì Eclipse cung





















cấp phong phú các thành phần hỗ trợ biên soạn java, môi trường debug,
ngoài ra còn có thể quản lí và điều khiển các yếu tố khác của ứng dụng
Android.
2.1.4.3. Máy ảo Genymotion
Genymotion là một phần mềm giúp tạo các máy ảo Android trên máy
tính để có thể thoải mái cài và sử dụng ứng dụng các từ Google Play.
Người dùng cũng được phép truy cập vào những thành phần hệ thống
khác, ví dụ như homescreen, phần cài đặt, thanh thông báo... y hệt như trên
thiết bị di động và hoàn toàn miễn phí. Genymotion thực chất sử dụng
VirtualBox để tạo ra các máy ảo, tuy nhiên phần mềm này sẽ giúp người dùng
đơn giản được nhiều bước thiết lập.


24

Hình 2.4: Máy ảo Genymotion


25

Các tính năng chính:


Tăng tốc độ xử lý đồ họa của OpenGL để có chất lượng xem
3D tốt hơn.




Cài đặt ứng dụng trực tiếp từ Google Play.



Hỗ trợ chế độ xem toàn màn hình, giúp người dùng trải
nghiệm các ứng dụng Android một cách mới mẻ.



Khởi động các máy ảo cùng lúc.



Quản lý các cảm biến:

o

Tình trạng pin

o

GPS

o

Máy ảnh




Trực tiếp ra lệnh cho các cảm biến máy ảo từ shell của
Genymotion



Tương thích hoàn toàn với ADB. Bạn có thể kiểm soát máy
ảo từ máy chủ



Dễ cài đặt



Tùy chỉnh máy ảo: độ phân giải màn hình, dung lượng bộ
nhớ, dung lượng CPU



Tải và thiết lập máy ảo Genymotion phiên bản mới nhất một
cách dễ dàng


×