Đồ án Xây dựng ứng dụng hỗ trợ lên thực dơn khoa học theo lượng calo

BỘ GIÁO DỤC VÀ ĐÀO TẠO  
TRƯỜNG ĐẠI HỌC QUẢN LÝ VÀ CÔNG NGHỆ HẢI PHÒNG  
-------------------------------  
ISO 9001:2015  
ĐỒ ÁN TỐT NGHIỆP  
NGÀNH : CÔNG NGHỆ THÔNG TIN  
Sinh viên  
: Mai Đức Anh  
Giảng viên hướng dẫn: Ths. Nguyễn Thị Xuân Hương  
HẢI PHÒNG – 2020  
QC20-B18  
BỘ GIÁO DỤC VÀ ĐÀO TẠO  
TRƯỜNG ĐẠI HỌC QUẢN LÝ VÀ CÔNG NGHỆ HẢI PHÒNG  
-----------------------------------  
XÂY DỰNG ỨNG DỤNG HỖ TRỢ LÊN THỰC DƠN  
KHOA HỌC THEO LƯỢNG CALO  
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY  
NGÀNH: CÔNG NGHỆ THÔNG TIN  
Sinh viên  
: Mai Đức Anh  
Giảng viên hướng dẫn: Ths. Nguyễn Thị Xuân Hương  
HẢI PHÒNG – 2020  
QC20-B18  
BỘ GIÁO DỤC VÀ ĐÀO TẠO  
TRƯỜNG ĐẠI HỌC QUẢN LÝ VÀ CÔNG NGHỆ HẢI PHÒNG  
--------------------------------------  
NHIỆM VỤ ĐỀ TÀI TỐT NGHIỆP  
Sinh viên: Mai Đức Anh  
Lớp : CT1802  
Ngành : Công nghệ Thông tin  
Tên đề tài: Xây dựng ứng dụng hỗ trợ lên thực đơn khoa học theo lượng calo.  
Mã SV: 1412101038  
QC20-B18  
NHIỆM VỤ ĐỀ TÀI  
1. Nội dung và các yêu cầu cần giải quyết trong nhiệm vụ đề tài tốt  
nghiệp  
a. Nội dung:  
- Tìm hiểu về hệ điều hành Android,  
- Tìm hiểu về môi trường lập trình Android.  
- Xây dựng ứng dụng hỗ trợ lên thực đơn khoa học theo lượng calo trong đó  
cho phép:  
o Người dùng nhập thông tin  
o Tạo danh mục thực phẩm  
o Lên thực đơn của một ngày theo lượng calo  
o Hiển thị thực đơn  
b. Các yêu cầu cần giải quyết  
- Trình bày các nội dung tìm hiểu được về hệ điều hành Android, môi  
trường lập trình và phát triển ứng dụng Android.  
- Cài đặt, cấu hình ứng dụng  
2. Các tài liệu, số liệu cần thiết  
- Tài liệu tham khảo về Hệ điều hành Android, lập trình phát triển ứng  
dụng trên Android.  
- Tài liệu về các danh mục thực phẩm phổ biến cho người Việt Nam và  
lượng calo cần thiết cho cơ thể.  
3. Địa điểm thực tập tốt nghiệp  
- Trường Đại học Quản lý và Công nghệ Hải Phòng.  
QC20-B18  
CÁN BỘ HƯỚNG DẪN ĐỀ TÀI TỐT NGHIỆP  
: Nguyễn Thị Xuân Hương  
Họ và tên  
Học hàm, học vị  
: Thạc sỹ  
Cơ quan công tác : Trường Đại học Quản lý và Công nghệ Hải Phòng  
Nội dung hướng dẫn:  
- Tìm hiểu về hệ điều hành Android  
- Tìm hiểu về môi trường lập trình Android  
- Xây dựng ứng dụng hỗ trợ lên thực đơn khoa học theo lượng calo.  
Đề tài tốt nghiệp được giao ngày 30 tháng 03 năm 2020  
Yêu cầu phải hoàn thành xong trước ngày 30 tháng 06 năm 2020  
Đã nhận nhiệm vụ ĐTTN  
Đã giao nhiệm vụ ĐTTN  
Giảng viên hướng dẫn  
Sinh viên  
Hải Phòng, ngày tháng năm 2020  
HIỆU TRƯỞNG  
QC20-B18  
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM  
Độc lập - Tự do - Hạnh phúc  
PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN TỐT NGHIỆP  
Họ và tên giảng viên: Nguyễn Thị Xuân Hương  
Đơn vị công tác: Khoa Công nghệ Thông tin – Trường Đại học quản lý và Công nghệ  
Hải Phòng.  
Họ và tên sinh viên: Mai Đức Anh  
Ngành: Công nghệ thông tin  
Nội dung hướng dẫn: Xây dựng ứng dụng hỗ trợ lên thực đơn khoa học theo lượng calo.  
1. Tinh thần thái độ của sinh viên trong quá trình làm đề tài tốt nghiệp  
- Sinh viên chăm chỉ, chịu khó học hỏi, tự giác làm việc.  
- Chủ động trong công việc và liên hệ với giảng viên.  
2. Đánh giá chất lượng của đồ án/khóa luận (so với nội dung yêu cầu đã đề ra trong  
nhiệm vụ Đ.T. T.N trên các mặt lý luận, thực tiễn, tính toán số liệu…)  
- Sinh viên đã tìm hiểu về các kiến thức mới chưa được học trong chương trình về  
hệ điều hành Android và môi trường lập trình Android. Từ đó cài đặt hệ  
thống và xây dựng ứng dụng thử nghiệm.  
- Sinh viên đã xây dựng ứng dụng hỗ trợ lên thực đơn khoa học theo lượng calo,  
trong đó cho phép người dùng nhập thông tin và lượng calo cần tiêu thụ một  
ngày, tạo danh mục thực phẩm, Lên thực đơn theo ngày và hiển thị thực đơn  
theo lượng calo cần. Chương trình ban đầu đã thực hiện được các yêu cầu cơ  
bản. Sinh viên đã nỗ lực tự tìm hiểu và tự học lập trình trên hệ điều hành Android  
và xây dựng được ứng dụng.  
- Đồ án đáp ứng cơ bản những được yêu cầu đặt ra. Đề nghị cho phép sinh viên  
được bảo vệ trước hội đồng chấm tốt nghiệp ngành Công nghệ Thông tin.  
3. Ý kiến của giảng viên hướng dẫn tốt nghiệp  
QC20-B18  
Đạt  
Không đạt  
Điểm:……………………………………...  
X
Hải Phòng, ngày 28 tháng 06 năm 2020  
Giảng viên hướng dẫn  
(Ký và ghi rõ họ tên)  
QC20-B18  
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM  
Độc lập - Tự do - Hạnh phúc  
PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN CHẤM PHẢN BIỆN  
Họ và tên giảng viên: Đỗ Văn Chiểu  
Đơn vị công tác: Khoa Công nghệ thông tin, trường ĐH Quản lý và Công nghệ Hải  
Phòng  
Họ và tên sinh viên: Mai Đức Anh  
Ngành: Công nghệ thông tin  
Đề tài tốt nghiệp: Xây dựng ứng dụng hỗ trợ lên thực đơn khoa học theo lượng calo  
1. Phần nhận xét của giảng viên chấm phản biện  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
2. Những mặt còn hạn chế  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
...........................................................................................................................................  
3. Ý kiến của giảng viên chấm phản biện  
Được bảo vệ Không được bảo vệ  
Điểm:……………………  
Hải Phòng, ngày …… tháng ….. năm 2020  
Giảng viên chấm phản biện  
(Ký và ghi rõ họ tên)  
1
 
LỜI MỞ ĐẦU  
Với sự phát triển mạnh mẽ của công nghệ thông tin cùng các thiết bị di động  
nên phần lớn người dùng đều sử dụng máy vi tính hoặc điện thoại di động để làm việc  
và giải trí. Điều đó đã làm tăng năng xuất, hiệu quả lao động và mang lại nhiều tiện ích  
cho người dùng trong cuộc sống hiện đại. Hầu hết, mỗi người dùng đều sử dụng một  
điện thoại thông minh, ngoài việc gọi điện hay nhắn tin thì họ còn sử dụng để tải các  
ứng dụng có sẵn phục vụ cho việc lưu trữ dữ liệu và xử lý các thông tin cá nhân khác.  
Do đó việc xây dựng các ứng dụng cho điện thoại di động đang là một ngành công  
nghiệp mới đầy tiềm năng và hứa hẹn nhiều sự phát triển vượt bậc của ngành khoa học  
kỹ thuật.  
Phần mềm ứng dụng cho điện thoại di động hiện nay rất đa dạng và phong phú  
trên các hệ điều hành di động. Các hệ điều hành J2ME, Android, IOS, Hybrid, Web  
bases Mobile Application đã rất 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. 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  
nhất.  
Trong cuộc sống hiện đại, người dùng ngày một quan tâm đến sức khỏe và vóc  
dáng bản thân hơn. Họ không chỉ quan tâm đến việc rèn luyện thể dục thể thao mà việc  
cân bằng lượng dinh dưỡng trong các bữa ăn hàng ngày cũng rất quan trọng. Vì vậy  
em chọn đề tài “Xây dựng ứng dụng di động tính lượng calories cho thực đơn hàng  
ngày” để giúp người dùng lựa chọn các thực phẩm theo lượng calo cần thiết đảm bảo  
cho việc chăm sóc sức khỏe và vóc dáng của người dùng,  
2
LỜI CẢM ƠN  
Em xin gửi lời cảm ơn chân thành nhất đến quý thầy cô Trường Đại Học Dân  
Lập Hải Phòng, những người đã dìu dắt em tận tình, đã truyền đạt cho em những kiến  
thức và bài học quý báu trong suốt thời gian em theo học tại trường.  
Em xin trân trọng gửi lời cảm ơn đến tất cả các thầy cô trong khoa Công Nghệ  
Thông Tin, đặc biệt là cô giáo Ths.Nguyễn Thị Xuân Hương, cô đã tận tình hướng dẫn  
và giúp đỡ em trong suốt quá trình làm tốt nghiệp. Với sự chỉ bảo của cô, em đã có  
những định hướng tốt trong việc triển khai và thực hiện các yêu cầu trong quá trình  
làm đồ án tốt nghiệp.  
Em xin cảm ơn những người thân và gia đình đã quan tâm, động viên và luôn tạo  
cho em những điều kiện tốt nhất trong suốt quá trình học tập và làm tốt nghiệp.  
Ngoài ra, em cũng xin gửi lời cảm ơn tới tất cả bạn bè, đặc biệt là các bạn trong  
lớp CT1802 đã luôn gắn bó, cùng học tập và giúp đỡ em trong những năm qua và  
trong suốt quá trình thực hiện đồ án này.  
Em xin chân thành cảm ơn!  
Hải Phòng, ngày … tháng 06 năm 2020  
Sinh viên  
Mai Đức Anh  
3
 
CHƯƠNG 1: GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH ANDROID  
1.1. Giới thiệu về 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.  
Chính mã nguồn mở của Android cùng với tính không ràng buộc nhiều đã cho  
phép các nhà phát triển thiết bị di động và các lập trình viên đượ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ị.  
Nhờ yếu tố mở, dễ dàng tinh chỉnh cùng sự phát triển nhanh chóng đã khiến hệ  
điều hành này dần trở nên phổ biến, 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 nhưng giờ đây Android đã xuất hiện trên các smart TV, máy  
chơi game và một số thiết bị điện tử khác.  
Android bắt đầu với bản beta đầu tiên vào tháng 11 năm 2007 và phiên bản  
thương mại đầu tiên, Android 1.0, được phát hành vào tháng 9 năm 2008. Kể từ tháng  
4 năm 2009, phiên bản Android được phát triển, đặt tên theo chủ đề bánh kẹo và phát  
hành theo thứ tự bảng chữ cái: Cupcake, Donut, Eclair, Froyo, Gingerbread,  
Honeycomb, Ice Cream Sandwich, Jelly Bean, Kitkat, Lollipop, Marshmallow,  
Nougat, và bây giờ là Oreo.  
Kỷ nguyên của Android chính thức bắt đầu vào ngày 22 tháng 10 năm 2008, khi  
chiếc điện thoại T-Mobile G1 bắt đầu được bán ra tại Mỹ. Vào thời gian đầu, rất nhiều  
tính năng cơ bản bị thiếu sót như: bàn phím ảo, cảm ứng đa điểm và tính năng mua  
ứng dụng vẫn chưa xuất hiện. Tuy nhiên, một số tính năng cũng như giao diện đặc sản  
của hệ điều hành này đã khởi nguồn từ chiếc G1 và trở thành những yếu tố không thể  
thiếu trên Android sau này.  
Sự phát triển của hệ điều hành Android:  
Thanh thông báo vuốt từ trên xuống (Notification bar): Ngay từ những  
ngày đầu tiên của Android, thanh thông báo này đã đánh dấu một bước quan  
trọng mà trước đây chưa hề có hệ điều hành nào làm được - đưa tất cả thông  
tin tin nhắn, tin thoại hoặc các cuộc gọi nhỡ chỉ với thao tác vuốt xuống.  
6
   
Hình 1.1.1. Thanh thông báo ở phiên bản thời kỳ đầu(trái) so với phiên bản  
Android 8.1(phải)  
Màn hình chính (Home Screen) và các widget: Một điểm khác biệt giữa  
Android so với các hệ điều hành khác là phần màn hình chính của mình. Bên cạnh việc  
thay đổi được hình nền, Android còn cho phép người dùng tùy biến màn hình chính  
của mình với nhiều widgets kèm theo, chẳng hạn như đồng hồ, lịch, trình nghe nhạc,  
đưa các icon ứng dụng ra ngoài hoặc thậm chí có thể can thiệp sâu hơn để thay đổi  
toàn bộ giao diện màn hình Home Screen này.  
Hình 1.1.2. Màn hình chính của Android 1.0(trái) so với Android 8.1(phải)  
7
Đồng bộ và tích hợp chặt chẽ với Gmail: Vào thời điểm điện thoại G1 được bán  
ra, Gmail đã hỗ trợ giao thức POP và IMAP để tích hợp với các trình email trên di  
động. Tuy nhiên, lúc bấy giờ không có bất kì sản phẩm nào có thể hỗ trợ được hoàn  
toàn những tính năng ưu việt này của Gmail. Mãi cho đến khi Android 1.0 xuất hiện,  
vấn đề này đã được khắc phục và G1 trở thành chiếc điện thoại mang lại trải nghiệm  
Gmail tốt nhất trên thị trường lúc bấy giờ.  
Hình 1.1.3. Gmail trên Android thời kỳ đầu  
Kho ứng dụng Android Market: Thật khó có thể tưởng tượng một chiếc  
smartphone mà không hề có kho ứng dụng, nhưng vào thời điểm Android mới ra mắt,  
gần như không có bất kì điện thoại nào có kho ứng dụng nào được tích hợp và chính  
Android đã mở đầu cuộc cách mạng ứng dụng di động này. Android Market trên G1  
thời bấy giờ có rất ít ứng dụng và giao diện cực kỳ đơn giản, hơn nữa tính năng mua  
ứng dụng trên phiên bản này vẫn chưa được xuất hiện mãi cho đến năm sau - những  
vấn đề này dễ hiểu vì thời điểm này Android chỉ mới được khai sinh nên mọi thứ còn  
khá thô sơ.  
8
Hình 1.1.4. Hình ảnh Store của Android 1.0(trái) và Android 8.1(phải)  
Giao diện: Google đã phát triển giao diện Android phiên bản 1.0 với sự hỗ trợ  
từ TAT, viết tắt từ The Astonishing Tribe, một công ty thiết kế tương tác của Thụy  
Điển. Dấu ấn rõ ràng nhất mà TAT để lại trên phiên bản Android từ phiên bản 1.0 cho  
đến 2.2 chính là widget đồng hồ kim nằm ngoài Home Screen tuy đơn giản nhưng rất  
đẹp mắt. Công ty này sau đó ngừng hợp tác với Google và bị RIM mua lại để tập trung  
phát triển sản phẩm Blackberry cũng như nền tảng BBX sau này.  
1.2. Kiến trúc cơ bản của hệ điều hành Android  
Android gồm năm phần chính sau được chứa trong bốn lớp:  
9
 
Hình 1.2.1. Kiến trúc hệ điều hành Android  
1.2.1. Nhân Linux  
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.  
1.2.2. Thư viện  
Android bao gồm một tập hợp các thư viện C/C++ được sử dụng bởi nhiều thành  
phần khác nhau trong hệ thống Android.Điều này được thể hiện thông qua nền tảng  
ứng dụng Android. Một số các thư viện cơ bản được liệt kê dưới đây:  
Hệ thống thư viện C: một BSD có nguồn gốc từ hệ thống thư viện tiêu chuẩn  
C (libc), điều chỉnh để nhúng vào các thiết bị dựa trên Linux.  
Thư viện Media - dựa trên PacketVideo's OpenCORE; các thư viện hỗ trợ  
phát lại và ghi âm của âm thanh phổ biến và các định dạng video, cũng như  
các tập tin hình ảnh tĩnh,bao gồm cả MPEG4, H.264, MP3, AAC, AMR, JPG,  
and PNG.  
Bề mặt quản lý - Quản lý việc truy xuất vào hệ thống hiển thị.  
10  
   
LibWebCore - một công cụ trình duyệt web hiện đại mà quyền hạn cả hai  
trình duyệt web Android và xem web nhúng.  
SGL - Đồ họa 2D cơ bản của máy.  
Thư viện 3D - một thực hiện dựa vào OpenGL ES 1.0 APIs; các thư viện sử  
dụng phần cứng tăng tốc 3D (nếu có), tối ƣu hóa cao rasterizer phần mềm  
3D.  
FreeType - vẽ phông chữ bitmap và vector.  
SQLite một công cụ cơ sở dữ liệu quan hệ mạnh mẽ và nhẹ có sẵn cho tất cả các  
ứng dụng.  
1.2.3. Thực thi  
Android bao gồm một tập hợp các thư viện cơ bản mà cung cấp hầu hết các chức  
năng có sẵn trong các thư viện lõi của ngôn ngữ lập trình Java.Tất cả các ứng dụng  
Android đều chạy trong tiến trình riêng.Máy ảo Dalvik đã được viết để cho một thiết  
bị có thể chạy nhiều máy ảo hiệu quả.Các VM Dalvik thực thi các tập tin thực thi  
Dalvik (dex).Định dạng được tối ưu hóa cho bộ nhớ tối thiểu.VM là dựa trên register -  
based, và chạy các lớp đã được biên dịch bởi một trình biên dịch Java để chuyển đổi  
thành các định dạng dex.Các VM Dalvik dựa vào nhân Linux cho các chức năng cơ  
bản như luồng và quản lý bộ nhớ thấp.  
1.2.4. Nền tảng Android  
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 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:  
11  
   
Một tập hợp rất nhiều các View có khả năng kế thừa lẫn nhau dùng để thiết kế  
phần giao diện ứng dụng như: gridview, tableview, linearlayout  
Một “Content Provider” cho phép các ứng dụng có thể truy xuất dữ liệu từ  
các ứng dụng khác (chẳng hạn như Contacts) hoặc là chia sẻ dữ liệu giữa các  
ứng dụng đó.  
Một “Resource Manager” cung cấp truy xuất tới các tài nguyên không phải là  
mã nguồn, chẳng hạn như: localized strings, graphics, and layout files.  
Một “Notifycation Manager” cho phép tất cả các ứng dụng hiển thị các  
custom alerts trong status bar. Activity Maanager được dùng để quản lý chu  
trình sống của ứng dụng và điều hướng các activity.  
1.2.5. Tầng ứng dụng  
Tầng ứng dụng (Application) là tầng giao tiếp với người dùng với các thiết bị  
Android như Danh bạ, tin nhắn, trò chơi, tiện ích tính toán, trình duyệt… Mọi ứng  
dụng viết đều nằm trên tầng này.  
12  
 
Tải về để xem bản đầy đủ
pdf 64 trang yennguyen 13160 Free
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Xây dựng ứng dụng hỗ trợ lên thực dơn khoa học theo lượng calo", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfdo_an_xay_dung_ung_dung_ho_tro_len_thuc_don_khoa_hoc_theo_lu.pdf