ĐỒ ÁN TỐT NGHIỆP: XÂY DỰNG ỨNG DỤNG DAILYMOODZ TRÊN NỀN TẢNG ANDROID – Tài liệu text

ĐỒ ÁN TỐT NGHIỆP: XÂY DỰNG ỨNG DỤNG DAILYMOODZ 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 (3.06 MB, 78 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA CÔNG NGHỆ THÔNG TIN
Tel. (84-511) 736 949, Fax. (84-511) 842 771
Website: itf.ud.edu.vn, E-mail: bem2vnn@gmail.com

ĐỒ ÁN TỐT NGHIỆP KỸ SƯ
NGÀNH CÔNG NGHỆ THÔNG TIN
MÃ NGÀNH : D480201

ĐỀ TÀI :
XÂY DỰNG ỨNG DỤNG DAILYMOODZ
TRÊN NỀN TẢNG ANDROID

SINH VIÊN

: BÙI XUÂN THẾ

MÃ SINH VIÊN : 102110240
LỚP

: 11T2

CBHD

: PGS.TS. VÕ TRUNG HÙNG

ĐÀ NẴNG, 06/2016

LỜI CẢM ƠN
Tôi 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 Bách khoa Đà Nẵng đã truyền đạt những kiến thức quý báu cho
tôi trong những năm học vừa qua và nhất là đã tạo điều kiện thuận lợi cho tôi
học tập, thực hiện đề tài tốt nghiệp này.
Đặc biệt, tôi xin chân thành cảm ơn Thầy giáo PGS.TS. Võ Trung Hùng đã
trực tiếp, tận tình giúp đỡ và hướng dẫn tôi trong suốt thời gian thực hiện đề
tài.
Để có được kết quả như ngày hôm nay, tôi rất biết ơn gia đình và bạn bè
đã động viên, khích lệ, giúp đỡ và tạo điều kiện thuận lợi nhất có thể trong suốt
quá trình học tập cũng như quá trình thực hiện đề tài tốt nghiệp này.
Mặc dù đã cố gắng nỗ lực hết sức để thực hiện đề tài này, song luận văn
của tôi chắc chắn khó tránh khỏi những thiếu sót. Do vậy, tôi rất mong nhận
được sự thông cảm, góp ý và chỉ bảo tận tình của thầy cô.
Một lần nữa xin chân thành cám ơn!
Đà Nẵng, ngày 08 tháng 06 năm 2016
Sinh viên thực hiện

Bùi Xuân Thế

LỜI CAM ĐOAN
Tôi xin cam đoan :
1. Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng
dẫn trực tiếp của thầy PGS.TS. Võ Trung Hùng.
2. Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng tên tác
giả, tên công trình, thời gian, địa điểm công bố.
3. Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi
xin chịu trách nhiệm.
Sinh viên

Bùi Xuân Thế

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
…………………………..

Đà Nẵng, ngày …. tháng …. năm 2016
CÁN BỘ HƯỚNG DẪN

PGS.TS. VÕ TRUNG HÙNG

NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
………………………..

……………………….

MỤC LỤC

DANH MỤC HÌNH ẢNH

DANH MỤC BẢNG BIỂU

Xây dựng ứng dụng DailyMoodz trên nền tảng Android

MỞ ĐẦU
1. GIỚI THIỆU ĐỀ TÀI
Thời đại ngày nay, khi Internet ngày càng phổ biến, đời sống con người
được nâng cao, cùng với sự bùng nổ của điện thoại. Nhu cần giải trí ngày củng một

tăng. Check In, chụp ảnh, chia sẽ ảnh với bạn bè, trò chuyện nhóm là một trong các
hình thức giải trí được rất nhiều người lựa chọn.
Xuất phát từ các nhu cầu thực tế đó, ứng dụng DailyMoodz là nơi các bạn
có thể chia sẻ tâm trạng, chia sẻ ảnh với bạn bè. Chỉ với chiếc điện thoại, máy tính
bảng… có hệ điều hành Android thì bạn có thể tha hồ làm những việc đó.
Xuất phát từ ý tưởng cung cấp một ứng dụng giúp mọi người giải trí trong
thời gian rảnh rỗi, tôi đã chọn đề tài “Xây dựng ứng dụng DailyMoodz” làm đề tài
tốt nghiệp.
2. MỤC ĐÍCH VÀ HƯỚNG XÂY DỰNG ĐỀ TÀI
2.1 Mục đích của đề tài
Ứng dụng DailyMoodz trên nền tảng Android được tôi xây dựng sẽ hướng
đến những chức năng sau :

Thực hiện các chức năng nhằm mục đích giải trí cho người dùng :
• Check In tâm trạng tại một vị trí, địa điểm nào đó với các
mood icon và ảnh.
• Chia sẻ ảnh với mọi người.
• Kết bạn và trò chuyện với bạn bè.

2.2 Ý nghĩa đề tài.
DailyMoodz là ứng dụng giải trí, nhằm mục đích giải trí sau những giờ làm
việc, hoặc trong thời gian rảnh.

SVTH: Bùi Xuân Thế – 11T2

Trang 9

Xây dựng ứng dụng DailyMoodz trên nền tảng Android

2.3 Phạm vi đề tài
“DailyMoodz” là ứng dụng trên điện thoại di động, trong giai đoạn này
được phát triển trên nền tảng di động Android phiên bản 2.3 trở lên.
2.4 Nhiệm vụ cần thực hiện

Tìm hiểu phát triển ứng dụng trên nền Android.

Xây dựng cơ sở dữ liệu.

2.5 Công cụ xây dựng
2.5.1 Phần ứng dụng:

Ứng dụng được viết bằng ngôn ngữ Java.

Cơ sở dữ liệu Webservice.

2.5.2 Môi trường triển khai:

Thiết bị chạy Android 2.3 trở lên

Các máy ảo Android như máy ảo mặc định của Android Develoption

Toolkit, Genymotion, …

2.6 Dự kiến kết quả đạt được

Bảng : Bảng dự diện kiến kết quả đạt được
Check In

Người dung có thể Check In tâm trạng của mình tại một vị
trí nào đó, và sẽ được hiển thị trên Maps.

Post Image

Người dùng có thể chia sẻ ảnh của mình với mọi người.

Maps

Hiển thị vị trí người dùng Check In và Post Image.

Feed

Như một dòng thời gian hiển thị các ảnh mà người dùng
đăng

Connections

Người dùng có thể kết bạn với nhiều người khác.

Profile

Người dùng có thể thay đổi thông tin tài khoản cá nhân.

Chart

Biểu đồ tâm trạng của người dùng trong ngày, trong tuần.

Settings

Người dùng có thể cài đặt cho ứng dụng của mình.

SVTH: Bùi Xuân Thế – 11T2

Trang 10

Xây dựng ứng dụng DailyMoodz trên nền tảng Android
Login,Register,
Sign Out.

Người dùng có thể đăng ký mới tài khoản, đăng nhập để
đăng bài đăng, và có thể đăng xuất nếu sử dụng.

3 TÓM TẮT PHƯƠNG PHÁP TRIỂN KHAI

Tìm hiểu đề tài.

Thiết kế và phân tích hệ thống.
Xây dựng ứng dụng

Kiểm thử.
Chạy thử nghiệm và kiểm thử.
Viết báo cáo và tổng kết đề tài và đề ra hướng phát triển.

SVTH: Bùi Xuân Thế – 11T2

Trang 11

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1.

TÌM HIỂU NỀN TẢNG DI ĐỘNG

Hình : Hệ điều hành trên điện thoại
Ngày này, thị trường di động đang phát triển mạnh mẽ chưa từng thấy với
vô vàng các nhãn hiệu, kiểu dáng, tính năng…Đã biến chiếc điện thoại thành một
thiết bị giải trí đa phương tiện không thể thiếu. Với lợi thế nhỏ gọn, được mọi người
sử dụng đem theo mọi lúc mọi nơi, nhưng cũng vì nhỏ g ọn như vậy cũng là một bất
lợi về xử lý và tốc độ. Để đảm bảo một chiếc điện thoại thông minh hoạt động tốt
thì nó cần có một hệ điều hành quản lý thiết bị.Đi kèm với sự phát triển phần cứng
trên thiết bị động thì cuộc chiến của các nhà phát triển các hệ điều hành trên điện
thoại di động cũng diễn ra hết sức khốc liệt. Hiện nay, các nền tảng di động lớn
được biết đến như sau
1.1.1

IOS
IOS là hệ điều hành trên các thiết bị di động của Apple. Ban đầu hệ điều

hành này chỉ được phát triển để chạy trên iPhone, nhưng sau đó nó đã được mở

rộng để chạy trên các thiết bị của Apple như iPod touch, iPad và Apple TV. Ngày 31
tháng 5, 2011, App Store của Apple chứa khoảng 500 000 ứng dụng iOS, và được
tải về tổng cộng khoảng 15 tỷ lần. Trong quý 4 năm 2010, có khoảng 26% điện
thoại thông minh chạy hệ điều hành iOS, sau hệ điều hành Android của Google và
Symbian của Nokia.

Giao diện người dùng của iOS dựa trên cơ sở thao tác bằng tay. Người dùng
có thể tương tác với hệ điều hành này thông qua rất nhiều động tác bằng tay trên
màn hình cảm ứng của các thiết bị của Apple.
Tháng 6 năm 2010, Apple đổi cái tên iPhone OS thành iOS. Nhãn hiệu
“IOS” đã được Cisco dùng để đặt tên cho hệ điều hành của mình. Để tránh các vụ
kiện cáo, Apple đã xin giấy phép sử dụng nhãn hiệu iOS từ Cisco.
1.1.2 ANDROID
Android là hệ điều hành trên điện thoại di động (và hiện nay là cả trên một
số đầu phát HD, HD Player, TV) phát triển bởi Google và dựa trên nền tảng Linux.
Trước đây, Android được phát triển bởi công ty liên hợp Android ( sau đó được
Google mua lại vào năm 2005).
Tháng 7 năm 2005, Google mua lại Android, Inc., một công ty nhỏ mới
thành lập có trụ sở ở Palo Alto, California, Mỹ. Những nhà đồng sáng lập của
Android chuyển sang làm việc tại Google gồm có Andy Rubin (đồng sáng lập công
ty Danger), Rich Miner (đồng sáng lập công ty Wildfire Communications), Nick
Sears (từng là phó chủ tịch của T-Mobile), và Chris White (trưởng nhóm thiết kế và
phát triển giao diện tại WebTV). Khi đó, có rất ít thông tin về các công việc của
Android, ngoại trừ việc họ đang phát triển phần mềm cho điện thoại di động. Điều
này tạo những tin đồn về việc Google có ý định bước vào thị trường điện thoại di
động.
Android được xây dựng để cho phép các nhà phát triển để tạo ra các ứng
dụng di động hấp dẫn tận dụng tất cả một chiếc điện thoại đã cung cấp. Nó được
xây dựng để được thực sự mở.

1.1.3 WINDOWN PHONE
Windows Phone là hệ điều hành được Microsoft phát triển để thay thế cho
hệ điều hành di động Windows Mobile trước đây. Windows Phone bắt đầu từ phiên
bản thứ 7 (khi ra mắt, Microsoft gọi nó là Windows Phone 7, còn hiện giờ nó đã lên
đến 7.5). Được biết, do phát triển trong thời gian ngắn nên Windows Phone rất hạn
chế trong việc tương thích ngược với các nền tảng Windows Mobile trước đó. Một
lý do nữa để Microsoft không quan tâm nhiều đến nền tảng cũ đó là vì màn hình

cảm ứng bằng ngón tay ngày càng phổ biến hơn trên điện thoại và Windows Mobile
vốn thiết kế cho bút stylus đã trở nên rất lỗi thời.
Một cột mốc quan trọng của Windows Phone đó là sự hợp tác giữa
Microsoft với Nokia sau khi hãng điện thoại Phần Lan này quyết định không còn
tập trung vào điện thoại Symbian nữa. Kết quả của sự hợp tác này đó là dòng Nokia
Lumia ra đời ở sự kiện Nokia World 2011. Đến CES 2012, Nokia tiếp tục ra mắt hai
máy Lumia mới nữa (mình sẽ đề cập ở phần sau). Việc tích hợp các dịch vụ của
Microsoft (Bing, Bing Maps, Windows Phone Marketplace,…) lên thiết bị Nokia
được cho là sẽ tạo nên lợi thế cạnh tranh cho WIndows Phone với hai đối thủ lớn
hiện thời là iOS và Android.
1.2. HỆ ĐIỀU HÀNH ANDROID
1.2.1. Giới thiệu

Hình : Các thiết bị 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.
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 game 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 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. 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 trong cái
gọi là “cuộc chiến điện thoại thông minh” giữa các công ty công nghệ.
1.2.2. Kiến trúc
Hệ điều hành Android có các thành phần phần mềm tạm chia thành 5 phần
với 4 tầng chính trong sơ đồ kiến trúc như hình dưới đây :

Xem thêm  NGHIÊN CỨU CÁC PHƯƠNG PHÁP PHÂN LOẠI VĂN BẢN VÀ ỨNG DỤNG VÀO PHÂN LOẠI THƯ ĐIỆN - Tài liệu text

Hình : Kiến trúc hệ điều hành Android
1.2.2.1 Linux kernel
Ở dưới cùng của các tầng trên là Linux – Linux 2.6 với khoảng 115 bản vá
lỗi. Tầng này cung cấp chức năng hệ thống cơ bản như quản lý các tiến trình, quản
lý bộ nhớ, quản lý thiết bị như máy ảnh, bàn phím, màn hình hiển thị, v.v…Ngoài ra,
nhân Linux xử lý tất cả các vấn đề về Mạng và một loạt các trình điều khiển thiết bị
giao tiếp với phần cứng ngoại vi.

1.2.2.2 Libraries
Tầng này là một tập hợp các thư viện bao gồm trình duyệt web mã nguồn
mở sử dụng WebKit engine, thư viện libc, cơ sở dữ liệu SQLite là một kho lưu trữ
hữu ích cho việc lưu trữ và chia sẻ dữ liệu của ứng dụng, có các thư viện để
chơi/ghi lại âm thanh và video, các thư viện SSL chịu trách nhiệm về bảo mật
Internet, v.v…

1.2.2.3

Android Runtime
Đây là phần thứ ba của kiến trúc Android. Phần này cung cấp một thành

phần quan trọng được gọi là Dalvik Virtual Machine – một loại máy ảo Java được
thiết kế đặc biệt và tối ưu hóa cho Android.
Android Runtime cũng cung cấp một tập các thư viện lõi cho phép các nhà
phát triển ứng dụng Android viết các ứng dụng Android sử dụng ngôn ngữ lập trình
Java (J2SE).
1.2.2.4 Application Framework
Tầng Application Framework cung cấp nhiều dịch vụ cấp cao hơn cho các
ứng dụng trong ở dạng các class trong Java. Các nhà phát triển ứng dụng được phép
sử dụng các dịch vụ này trong các ứng dụng của họ. (Ví dụ: dịch vụ kết nối Internet,
dịch vụ SMS,…)
1.2.2.5 Applications
Bạn sẽ viết ứng dụng và các ứng dụng mà bạn viết được cài đặt ở tầng này.
Ví dụ: Angry Bird, Facebook, Viber, v.v…
1.2.3. Ngôn ngữ lập trình Java

Giới thiệu

Java là một ngôn ngữ lập trình hướng đối tượng (OOP) và dựa trên các lớp.

Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn
thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch
mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi (runtime
environment) chạy.
Trước đây, Java chạy chậm hơn những ngôn ngữ dịch thẳng ra mã máy như
C và C++, nhưng sau này nhờ công nghệ “biên dịch tại chỗ” – Just in time
compilation, khoảng cách này đã được thu hẹp, và trong một số trường hợp đặc biệt
Java có thể chạy nhanh hơn. Java chạy nhanh hơn những ngôn ngữ thông dịch như
Python, Perl, PHP gấp nhiều lần. Java chạy tương đương so với C#, một ngôn ngữ
khá tương đồng về mặt cú pháp và quá trình dịch/chạy.

1.2.4. Môi trường lập trình Android Studio và Eclipse
1.2.4.1 Eclipse
Eclipse là một cộng đồng mã nguồn mở do hãng IBM đề xướng vào tháng
11-2001 nhằm phát triển một môi trường hỗ trợ các ứng dụng phần mềm mã nguồn
mở tích hợp. Đến tháng 1-2004, Eclipse trở thành Eclipse Foundation – một tổ chức
phi lợi nhuận với sự tham gia của nhiều cá nhân, viện nghiên cứu, trường đại học và
doanh nghiệp hoạt động trong ngành công nghiệp phần mềm.
Eclipse sẵn sàng cho phát triển ứng dụng trên máy trạm bằng ngôn ngữ
Java, vì thế người ta hay mặc định Eclipse là Java và ngược lại. Cấu hình máy đòi
hỏi không cao (bộ nhớ RAM 512 MB), thích hợp cho sinh viên. Ngoài ra, chương
trình viết bằng Java có thể chạy trên các hệ điều hành khác nhau.
Để lập trình Android, Eclipse cần được tích hợp bộ công cụ phát triển
Android ADT.
1.2.4.2 Android Studio

Hình : Android Studio

Một trong số những tính năng mới của môi trường phát triển này đó là nó
hỗ trợ tốt hơn việc bố cục ứng dụng cho nhiều thiết bị khác nhau, đảm bảo rằng app
viết ra có thể tương thích với màn hình của cả smartphone lẫn tablet. Những thay

đổi trong mã lập trình sẽ được hiển thị theo thời gian thực trên công cụ mô phỏng đi
kèm. Google cũng bổ sung thêm khả năng kéo thả các thành phần đồ họa để quá
trình xây dựng ứng dụng trở nên dễ dàng và nhanh chóng hơn. Android Studio còn
cho phép xem lại app ở nhiều ngôn ngữ khác nhau trong cùng một giao diện để lập
trình viên có thể chỉnh sửa những lỗi còn tồn tại. Đặc biệt là tiếng Việt cũng được
hỗ trợ trong Android Studio.
1.3. WEB SERVICE
1.3.1. Giới thiệu
Web service cho phép client và server tương tác được với nhau mặc dù trong
những môi trường khác nhau.
Web service thì có dạng mở và dựa vào các tiêu chuẩn XML và HTTP là nền
tảng kỹ thuật cho web service. Phần lớn kỹ thuật của web service được xây dựng là
những dự án nguồn mở. Bởi vậy, chúng độc lập và vận hành được với nhau.
Web service thì rất linh động : Vì với UDDI và WSDL, thì việc mô tả và phát
triển web service có thể được tự động hóa.
Web service có thể công bố (publish) và gọi thực hiện qua mạng.
Ngày nay web services được sử dụng rất nhiều trong những lĩnh vực khác nhau
của cuộc sống.
3.1.1.1 Ưu điểm
– Dịch vụ Web cung cấp khả năng hoạt động rộng lớn với các ứng dụng phần
mềm khác nhau chạy trên những nền tảng khác nhau.
– Sử dụng các giao thức và chuẩn mở. Giao thức và định dạng dữ liệu dựa trên
văn bản (text), giúp các lập trình viên dễ dàng hiểu được.
– Nâng cao khả năng tái sử dụng.
– Thúc đẩy đầu tư các hệ thống phần mềm đã tồn tại bằng cách cho phép các tiến

trình/chức năng nghiệp vụ đóng gói trong giao diện dịch vụ Web.

3.1.1.2 Nhược điểm
– Những thiệt hại lớn sẽ xảy ra vào khoảng thời gian chết của dịch vụ Web, giao
diện không thay đổi, có thể lỗi nếu một máy khách không được nâng cấp, thiếu các
giao thức cho việc vận hành.
– Có quá nhiều chuẩn cho dịch vụ Web khiến người dùng khó nắm bắt.
– Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật.
1.3.2. Giới thiệu về ngôn ngữ PHP
PHP (viết tắt hồi quy “PHP: Hypertext Preprocessor”) là một ngôn ngữ lập
trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng
viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với
web và có thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng
dụng web, tốc độ nhanh, nhỏgọn, cú pháp giống C và Java, dễ học và thời gian xây
dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh
chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thếgiới.
PHP được phát triển từ một sản phẩm có tên là PHP/FI. PHP/FI do Rasmus
Lerdorf tạo ra năm 1995, ban đầu được xem như là một tập con đơn giản của các
mã kịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu lý lịch của ông trên
mạng.
1.3.3.

Giới thiệu về JSON

Json (JavaScript Object Noattion) là 1 định dạng hoán vị dữ liệu nhanh. Chúng
dễ dàng cho chúng ta đọc và viết. Dễ dàng cho thiết bị phân tích và phát sinh. JSon
là cơ sở dựa trên tập hợp của ngôn ngữ lập trình JavaScript.
JSon được xây dựng trên 2 cấu trúc :
 Là tập hợp của các cặp tên và giá trị như name – value. Trong những

ngôn ngữ khác nhau, đây dược nhận thấy như là 1 đối tượng (object), sự
ghi (record), cấu trúc ( struct), từ điển (dictionary), bảng băm (hash
table), danh sách khóa (keyed list), hay mảng liên hợp.
 Là 1 tập hợp các giá trị đã được sắp xếp.

1.3.4.

Giới thiệu hệ quản trị cơ sở dữ liệu MySql
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và

được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì
MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt
động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất
mạnh.Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có
truy cập CSDL trên internet. MySQL miễn phí hoàn toàn cho nên bạn có thể tải về
MySQL từ trang chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên
bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix,
FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, …
MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác,
nó làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl,.
1.4. KẾT CHƯƠNG
Chương này trình bày các lý thuyết cơ bản về lập trình di động, lập trình
Android, các dịch vụ trực tuyến và cơ sở dữ liệu phục vụ cho việc xây dựng ứng
dụng.

Xây dựng ứng dụng DailyMoodz trên nền tảng Android

CHƯƠNG 2:

PHÂN TÍCH THIẾT KẾ HỆ THỐNG

2.1. PHÂN TÍCH YÊU CẦU
2.1.1 Mô tả bài toán
2.1.1.1

Đối tượng

2.1.1.2
• Dành cho những người có nhu cầu giải trí sau những giờ làm việc,
hoặc trong thời gian rảnh.
2.1.1.3

Mục đích

Thực hiện các chức năng nhằm mục đích giải trí cho người dùng :
• Check In tâm trạng tại một vị trí, địa điểm với icon Mood và
Image.
• Chia sẻ ảnh với mọi người.
• Kết bạn và trò chuyện

2.1.1.4 Triển khai
Từ những phân tích trên hệ thống sẽ được chia làm 2 phần :

Cơ sở dữ liệu :
• Sử dung Web service và hệ quan trị cơ sở dữ liệu Navicat.
Ứng dụng : Là thành phần chương trình đặt tại thiết bị di động nền tảng

Android. Chương trình sẽ tương tác trực tiếp với người sử dụng.

2.1.2 Phân tích yêu cầu bài toán
2.1.2.1 Người sử dụng
Người sử dụng điện thoại thông minh
2.1.2.2 Mục đích sử dụng

Thực hiện các chức năng nhằm mục đích giải trí cho người dùng :

SVTH: Bùi Xuân Thế – 11T2

Trang 22

Xây dựng ứng dụng DailyMoodz trên nền tảng Android
• Check In tâm trạng tại một vị trí, địa điểm với icon Mood và
Image.
• Chia sẻ ảnh với mọi người.
• Két bạn và trò chuyện.
2.1.2.3 Công nghệ
Công nghệ được sử dụng chia thành 2 phần:
• Service

Ngôn ngữ lập trình PHP

 Hệ quản trị CSDL MySQL
 Công cụ phát triển Notepad ++ ,Navicat …
• Mobile

 Ngôn ngữ lập trình Java-Android
 Hệ quản trị cơ sở dữ liệu SQLite
 Android SDK
 Android Studio
2.1.3 Mô tả những yêu cầu phi chức năng
2.1.3.1 Yêu cầu về tính năng của hệ thống

Hiệu năng: Ứng dụng chạy nhanh và mượt, truy xuất cơ sở dữ liệu nhanh.
Tính sẵn sàng: Ứng dụng có khả năng phục vụ mọi thời điểm người dùng

cần sử dụng.
Tính tương thích: Cài đặt và chạy được trên mọi thiết bị dùng hệ điều
hành Android 2.3 trở lên

2.1.3.2 Yêu cầu về giao diện người dùng

Giao diện thiết kế dạng phẳng, đẹp, dễ nhìn, dễ sử dụng.
Ngôn ngữ hiển thị bằng tiếng Anh.
Font chữ của phần mềm theo chuẩn UTF-8.

SVTH: Bùi Xuân Thế – 11T2

Trang 23

Xây dựng ứng dụng DailyMoodz trên nền tảng Android

2.1.3.3 Phân tích khả thi

Nhu cầu bảo mật thông tin cá nhân ngày càng cao, người ta càng chú
trọng đến vấn đề riêng tư khi sử dụng điện thoại thông minh.

Lượng người dùng điện thoại thông minh chạy Android rất đông đảo.

Ứng dụng được cung cấp miễn phí cho mọi người dùng và hướng tới phát
triển trên mọi nền tảng di động phổ biến hiện nay.

2.1.3.4

Chi phí phát triển

Điện thoại thông mình ngày nay đang phát triển các dòng điện thoại bình
dân, nghĩa là chi phí cho một chiếc điện thoại hỗ trợ đầy đủ các tính năng
mà chương trình yêu cầu thì hoàn toàn không đắt.

Phát triển một ứng dụng Android rất dễ dàng với công cụ miễn phí như
Android Studio hay Eclipse và bộ ADT.

SVTH: Bùi Xuân Thế – 11T2

Trang 24

Xây dựng ứng dụng DailyMoodz trên nền tảng Android
2.1.4 Xác định các chức năng chính của hệ thống

Bảng 2: Bảng các chức năng
Mã chức năng

Tên chức năng

M.1

Register

M.2

Login

M.3

Forgot password

Xem thêm  10 ứng dụng nhắn tin tốt nhất cho Android

M.4

Edit password

M.5

Check In

M.6

Maps

M.7

Post Image

M.8

Mood

M.9

Feed

M.10

Chart

M.12

Settings

M.13

Profile

M.14

Connections

M.15

Logout

SVTH: Bùi Xuân Thế – 11T2

Trang 25

LỜI CẢM ƠNTôi xin chân thành cảm ơn những thầy cô trong khoa Công nghệ thông tin, trường Đại học Bách khoa TP. Đà Nẵng đã truyền đạt những kỹ năng và kiến thức quý báu chotôi trong những năm học vừa mới qua và nhất là đã tạo điều kiện kèm theo thuận tiện cho tôihọc tập, triển khai đề tài tốt nghiệp này. Đặc biệt, tôi xin chân thành cảm ơn Thầy giáo PGS.TS. Võ Trung Hùng đãtrực tiếp, tận tình trợ giúp và hướng dẫn tôi trong suốt thời hạn triển khai đềtài. Để có được hiệu quả như ngày ngày hôm nay, tôi rất biết ơn mái ấm gia đình và bạn bèđã động viên, khuyến khích, trợ giúp và tạo điều kiện kèm theo thuận tiện nhất hoàn toàn có thể trong suốtquá trình học tập cũng như quy trình thực thi đề tài tốt nghiệp này. Mặc dù đã cố gắng nỗ lực nỗ lực rất là để thực thi đề tài này, tuy nhiên luận văncủa tôi chắc như đinh khó tránh khỏi những thiếu sót. Do vậy, tôi rất mong nhậnđược sự thông cảm, góp ý và chỉ bảo tận tình của thầy cô. Một lần nữa xin chân thành cám ơn ! Thành Phố Đà Nẵng, ngày 08 tháng 06 năm 2016S inh viên thực hiệnBùi Xuân ThếLỜI CAM ĐOANTôi xin cam kết ràng buộc : 1. Những nội dung trong luận văn này là do tôi triển khai dưới sự hướngdẫn trực tiếp của thầy PGS.TS. Võ Trung Hùng. 2. Mọi tìm hiểu thêm dùng trong luận văn đều được trích dẫn rõ ràng tên tácgiả, tên khu công trình, thời hạn, khu vực công bố. 3. Mọi sao chép không hợp lệ, vi phạm quy định đào tạo và giảng dạy, hay gian trá, tôixin chịu nghĩa vụ và trách nhiệm. Sinh viênBùi Xuân ThếNHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN …………………. TP. Đà Nẵng, ngày …. tháng …. năm 2016C ÁN BỘ HƯỚNG DẪNPGS.TS. VÕ TRUNG HÙNGNHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN ………………… MỤC LỤCDANH MỤC HÌNH ẢNHDANH MỤC BẢNG BIỂUXây dựng ứng dụng DailyMoodz trên nền tảng AndroidMỞ ĐẦU1. GIỚI THIỆU ĐỀ TÀIThời đại ngày này, khi Internet ngày càng phổ cập, đời sống con ngườiđược nâng cao, cùng với sự bùng nổ của điện thoại cảm ứng. Nhu cần vui chơi ngày củng mộttăng. Check In, chụp ảnh, chia sẽ ảnh với bạn hữu, trò chuyện nhóm là một trong cáchình thức vui chơi được rất nhiều người lựa chọn. Xuất phát từ những nhu yếu trong thực tiễn đó, ứng dụng DailyMoodz là nơi những bạncó thể san sẻ tâm trạng, san sẻ ảnh với bạn hữu. Chỉ với chiếc điện thoại thông minh, máy tínhbảng … có hệ quản lý và điều hành Android thì bạn hoàn toàn có thể tha hồ làm những việc đó. Xuất phát từ ý tưởng sáng tạo phân phối một ứng dụng giúp mọi người vui chơi trongthời gian rảnh rỗi, tôi đã chọn đề tài “ Xây dựng ứng dụng DailyMoodz ” làm đề tàitốt nghiệp. 2. MỤC ĐÍCH VÀ HƯỚNG XÂY DỰNG ĐỀ TÀI2. 1 Mục đích của đề tàiỨng dụng DailyMoodz trên nền tảng Android được tôi xây dựng sẽ hướngđến những tính năng sau : Thực hiện những tính năng nhằm mục đích mục tiêu vui chơi cho người dùng : • Check In tâm trạng tại một vị trí, khu vực nào đó với cácmood icon và ảnh. • Chia sẻ ảnh với mọi người. • Kết bạn và trò chuyện với bè bạn. 2.2 Ý nghĩa đề tài. DailyMoodz là ứng dụng vui chơi, nhằm mục đích mục tiêu vui chơi sau những giờ làmviệc, hoặc trong thời hạn rảnh. SVTH : Bùi Xuân Thế – 11T2 Trang 9X ây dựng ứng dụng DailyMoodz trên nền tảng Android2. 3 Phạm vi đề tài “ DailyMoodz ” là ứng dụng trên điện thoại di động, trong tiến trình nàyđược tăng trưởng trên nền tảng di động Android phiên bản 2.3 trở lên. 2.4 Nhiệm vụ cần thực hiệnTìm hiểu tăng trưởng ứng dụng trên nền Android. Xây dựng cơ sở tài liệu. 2.5 Công cụ xây dựng2. 5.1 Phần ứng dụng : Ứng dụng được viết bằng ngôn từ Java. Cơ sở tài liệu Webservice. 2.5.2 Môi trường tiến hành : Thiết bị chạy Android 2.3 trở lênCác máy ảo Android như máy ảo mặc định của Android DeveloptionToolkit, Genymotion, … 2.6 Dự kiến hiệu quả đạt đượcBảng : Bảng dự diện kiến tác dụng đạt đượcCheck InNgười dung hoàn toàn có thể Check In tâm trạng của mình tại một vịtrí nào đó, và sẽ được hiển thị trên Maps. Post ImageNgười dùng hoàn toàn có thể san sẻ ảnh của mình với mọi người. MapsHiển thị vị trí người dùng Check In và Post Image. FeedNhư một dòng thời hạn hiển thị những ảnh mà người dùngđăngConnectionsNgười dùng hoàn toàn có thể kết bạn với nhiều người khác. ProfileNgười dùng hoàn toàn có thể đổi khác thông tin thông tin tài khoản cá thể. ChartBiểu đồ tâm trạng của người dùng trong ngày, trong tuần. SettingsNgười dùng hoàn toàn có thể thiết lập cho ứng dụng của mình. SVTH : Bùi Xuân Thế – 11T2 Trang 10X ây dựng ứng dụng DailyMoodz trên nền tảng AndroidLogin, Register, Sign Out. Người dùng hoàn toàn có thể ĐK mới thông tin tài khoản, đăng nhập đểđăng bài đăng, và hoàn toàn có thể đăng xuất nếu sử dụng. 3 TÓM TẮT PHƯƠNG PHÁP TRIỂN KHAITìm hiểu đề tài. Thiết kế và nghiên cứu và phân tích mạng lưới hệ thống. Xây dựng ứng dụngKiểm thử. Chạy thử nghiệm và kiểm thử. Viết báo cáo giải trình và tổng kết đề tài và đề ra hướng tăng trưởng. SVTH : Bùi Xuân Thế – 11T2 Trang 11CH ƯƠNG 1 : CƠ SỞ LÝ THUYẾT1. 1. TÌM HIỂU NỀN TẢNG DI ĐỘNGHình : Hệ quản lý và điều hành trên điện thoạiNgày này, thị trường di động đang tăng trưởng can đảm và mạnh mẽ chưa từng thấy vớivô vàng những thương hiệu, mẫu mã, tính năng … Đã biến chiếc điện thoại thông minh thành mộtthiết bị vui chơi đa phương tiện không hề thiếu. Với lợi thế nhỏ gọn, được mọi ngườisử dụng đem theo mọi lúc mọi nơi, nhưng cũng vì nhỏ g ọn như vậy cũng là một bấtlợi về giải quyết và xử lý và vận tốc. Để bảo vệ một chiếc điện thoại cảm ứng mưu trí hoạt động giải trí tốtthì nó cần có một hệ quản lý và điều hành quản trị thiết bị. Đi kèm với sự tăng trưởng phần cứngtrên thiết bị động thì đại chiến của những nhà tăng trưởng những hệ điều hành quản lý trên điệnthoại di động cũng diễn ra rất là quyết liệt. Hiện nay, những nền tảng di động lớnđược biết đến như sau1. 1.1 IOSIOS là hệ quản lý trên những thiết bị di động của Apple. Ban đầu hệ điềuhành này chỉ được tăng trưởng để chạy trên iPhone, nhưng sau đó nó đã được mởrộng để chạy trên những thiết bị của Apple như iPod touch, iPad và Apple TV. Ngày 31 tháng 5, 2011, App Store của Apple chứa khoảng chừng 500 000 ứng dụng iOS, và đượctải về tổng số khoảng chừng 15 tỷ lần. Trong quý 4 năm 2010, có khoảng chừng 26 % điệnthoại mưu trí chạy hệ quản lý iOS, sau hệ quản lý Android của Google vàSymbian của Nokia. Giao diện người dùng của iOS dựa trên cơ sở thao tác bằng tay. Người dùngcó thể tương tác với hệ quản lý và điều hành này trải qua rất nhiều động tác bằng tay trênmàn hình cảm ứng của những thiết bị của Apple. Tháng 6 năm 2010, Apple đổi cái tên iPhone OS thành iOS. Nhãn hiệu ” IOS ” đã được Cisco dùng để đặt tên cho hệ quản lý của mình. Để tránh những vụkiện cáo, Apple đã xin giấy phép sử dụng thương hiệu iOS từ Cisco. 1.1.2 ANDROIDAndroid là hệ quản lý trên điện thoại di động ( và lúc bấy giờ là cả trên mộtsố đầu phát HD, HD Player, TV ) tăng trưởng bởi Google và dựa trên nền tảng Linux. Trước đây, Android được tăng trưởng bởi công ty phối hợp Android ( sau đó đượcGoogle mua lại vào năm 2005 ). Tháng 7 năm 2005, Google mua lại Android, Inc., một công ty nhỏ mớithành lập có trụ sở ở Palo Alto, California, Mỹ. Những nhà đồng sáng lập củaAndroid chuyển sang thao tác tại Google gồm có Andy Rubin ( đồng sáng lập côngty Danger ), Rich Miner ( đồng sáng lập công ty Wildfire Communications ), NickSears ( từng là phó quản trị của T-Mobile ), và Chris White ( trưởng nhóm phong cách thiết kế vàphát triển giao diện tại WebTV ). Khi đó, có rất ít thông tin về những việc làm củaAndroid, ngoại trừ việc họ đang tăng trưởng ứng dụng cho điện thoại di động. Điềunày tạo những tin đồn thổi về việc Google có dự tính bước vào thị trường điện thoại cảm ứng diđộng. Android được xây dựng để cho phép những nhà tăng trưởng để tạo ra những ứngdụng di động mê hoặc tận dụng toàn bộ một chiếc điện thoại cảm ứng đã phân phối. Nó đượcxây dựng để được thực sự mở. 1.1.3 WINDOWN PHONEWindows Phone là hệ quản lý được Microsoft tăng trưởng để sửa chữa thay thế chohệ quản lý di động Windows Mobile trước đây. Windows Phone khởi đầu từ phiênbản thứ 7 ( khi ra đời, Microsoft gọi nó là Windows Phone 7, còn hiện giờ nó đã lênđến 7.5 ). Được biết, do tăng trưởng trong thời hạn ngắn nên Windows Phone rất hạnchế trong việc thích hợp ngược với những nền tảng Windows Mobile trước đó. Mộtlý do nữa để Microsoft không chăm sóc nhiều đến nền tảng cũ đó là vì màn hìnhcảm ứng bằng ngón tay ngày càng thông dụng hơn trên điện thoại cảm ứng và Windows Mobilevốn phong cách thiết kế cho bút stylus đã trở nên rất lỗi thời. Một cột mốc quan trọng của Windows Phone đó là sự hợp tác giữaMicrosoft với Nokia sau khi hãng điện thoại thông minh Phần Lan này quyết định hành động không còntập trung vào điện thoại thông minh Symbian nữa. Kết quả của sự hợp tác này đó là dòng NokiaLumia sinh ra ở sự kiện Nokia World 2011. Đến CES 2012, Nokia liên tục ra đời haimáy Lumia mới nữa ( mình sẽ đề cập ở phần sau ). Việc tích hợp những dịch vụ củaMicrosoft ( Bing, Bing Maps, Windows Phone Marketplace, … ) lên thiết bị Nokiađược cho là sẽ tạo nên lợi thế cạnh tranh đối đầu cho WIndows Phone với hai đối thủ cạnh tranh lớnhiện thời là iOS và Android. 1.2. HỆ ĐIỀU HÀNH ANDROID1. 2.1. Giới thiệuHình : Các thiết bị AndroidAndroid là một hệ quản lý dựa trên nền tảng Linux được phong cách thiết kế dànhcho những thiết bị di động có màn hình hiển thị cảm ứng như điện thoại cảm ứng mưu trí và máytính bảng. Ban đầu, Android được tăng trưởng bởi Tổng công ty Android, với sự hỗtrợ kinh tế tài chính từ Google và sau này được chính Google mua lại vào năm 2005. Android ra đời vào năm 2007 cùng với công bố xây dựng Liên minh thiết bị cầmtay mở : một hiệp hội gồm những công ty phần cứng, ứng dụng, và viễn thông với mụctiêu tăng nhanh những tiêu chuẩn mở cho những thiết bị di động. Chiếc điện thoại cảm ứng đầu tiênchạy Android được bán vào tháng 10 năm 2008. Những yếu tố này đã giúp Android trở thành nền tảng điện thoại cảm ứng thông minhphổ biến nhất quốc tế, vượt qua Symbian vào quý 4 năm 2010, và được những công tycông nghệ lựa chọn khi họ cần một hệ quản lý và điều hành không nặng nề, có năng lực tinhchỉnh, và giá rẻ chạy trên những thiết bị công nghệ cao thay vì tạo dựng từ đầu. Kếtquả là mặc dầu được phong cách thiết kế để chạy trên điện thoại cảm ứng và máy tính bảng, Android đãxuất hiện trên TV, máy chơi game và những thiết bị điện tử khác. Bản chất mở củaAndroid cũng khuyến khích một đội ngũ phần đông 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 Bất Động Sản do hội đồng quản trị. Những dự ánnày bổ trợ những tính năng hạng sang cho những người dùng thích tìm tòi hoặc đưaAndroid vào những thiết bị bắt đầu chạy hệ quản lý khác. Android chiếm 75 % thị trường điện thoại thông minh mưu trí trên toàn quốc tế vàothời điểm quý 3 năm 2012, với tổng số 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. Sự thành công xuất sắc của hệ quản lý và điều hành cũng khiến nó trởthành tiềm năng trong những vụ kiện tương quan đến bằng ý tưởng, góp mặt trong cáigọi là ” đại chiến điện thoại cảm ứng mưu trí ” giữa những công ty công nghệ tiên tiến. 1.2.2. Kiến trúcHệ quản lý và điều hành Android có những thành phần ứng dụng tạm chia thành 5 phầnvới 4 tầng chính trong sơ đồ kiến trúc như hình dưới đây : Hình : Kiến trúc hệ quản lý Android1. 2.2.1 Linux kernelỞ dưới cùng của những tầng trên là Linux – Linux 2.6 với khoảng chừng 115 bản válỗi. Tầng này phân phối công dụng mạng lưới hệ thống cơ bản như quản trị những tiến trình, quảnlý bộ nhớ, quản trị thiết bị như máy ảnh, bàn phím, màn hình hiển thị hiển thị, v.v… Ngoài ra, nhân Linux giải quyết và xử lý toàn bộ những yếu tố về Mạng và một loạt những trình tinh chỉnh và điều khiển thiết bịgiao tiếp với phần cứng ngoại vi. 1.2.2. 2 LibrariesTầng này là một tập hợp những thư viện gồm có trình duyệt web mã nguồnmở sử dụng WebKit engine, thư viện libc, cơ sở tài liệu SQLite là một kho lưu trữhữu ích cho việc tàng trữ và san sẻ tài liệu của ứng dụng, có những thư viện đểchơi / ghi lại âm thanh và video, những thư viện SSL chịu nghĩa vụ và trách nhiệm về bảo mậtInternet, v.v… 1.2.2. 3A ndroid RuntimeĐây là phần thứ ba của kiến trúc Android. Phần này phân phối một thànhphần quan trọng được gọi là Dalvik Virtual Machine – một loại máy ảo Java đượcthiết kế đặc biệt quan trọng và tối ưu hóa cho Android. Android Runtime cũng cung ứng một tập những thư viện lõi được cho phép những nhàphát triển ứng dụng Android viết những ứng dụng Android sử dụng ngôn từ lập trìnhJava ( J2SE ). 1.2.2. 4 Application FrameworkTầng Application Framework cung ứng nhiều dịch vụ cấp cao hơn cho cácứng dụng trong ở dạng những class trong Java. Các nhà tăng trưởng ứng dụng được phépsử dụng những dịch vụ này trong những ứng dụng của họ. ( Ví dụ : dịch vụ liên kết Internet, dịch vụ SMS, … ) 1.2.2. 5 ApplicationsBạn sẽ viết ứng dụng và những ứng dụng mà bạn viết được thiết lập ở tầng này. Ví dụ : Angry Bird, Facebook, Viber, v.v… 1.2.3. Ngôn ngữ lập trình JavaGiới thiệuJava là một ngôn từ lập trình hướng đối tượng người tiêu dùng ( OOP ) và dựa trên những lớp. Khác với hầu hết ngôn từ lập trình thường thì, thay vì biên dịch mã nguồnthành mã máy hoặc thông dịch mã nguồn khi chạy, Java được phong cách thiết kế để biên dịchmã nguồn thành bytecode, bytecode sau đó sẽ được thiên nhiên và môi trường thực thi ( runtimeenvironment ) chạy. Trước đây, Java chạy chậm hơn những ngôn từ dịch thẳng ra mã máy nhưC và C + +, nhưng sau này nhờ công nghệ tiên tiến ” biên dịch tại chỗ ” – Just in timecompilation, khoảng cách này đã được thu hẹp, và trong một số ít trường hợp đặc biệtJava hoàn toàn có thể chạy nhanh hơn. Java chạy nhanh hơn những ngôn từ thông dịch nhưPython, Perl, PHP gấp nhiều lần. Java chạy tương tự so với C #, một ngôn ngữkhá tương đương về mặt cú pháp và quy trình dịch / chạy. 1.2.4. Môi trường lập trình Android Studio và Eclipse1. 2.4.1 EclipseEclipse là một hội đồng mã nguồn mở do hãng IBM đề xướng vào tháng11-2001 nhằm mục đích tăng trưởng một môi trường tự nhiên tương hỗ những ứng dụng ứng dụng mã nguồnmở tích hợp. Đến tháng 1-2004, Eclipse trở thành Eclipse Foundation – một tổ chứcphi doanh thu với sự tham gia của nhiều cá thể, viện điều tra và nghiên cứu, trường ĐH vàdoanh nghiệp hoạt động giải trí trong ngành công nghiệp ứng dụng. Eclipse sẵn sàng chuẩn bị cho tăng trưởng ứng dụng trên máy trạm bằng ngôn ngữJava, do đó người ta hay mặc định Eclipse là Java và ngược lại. Cấu hình máy đòihỏi không cao ( bộ nhớ RAM 512 MB ), thích hợp cho sinh viên. Ngoài ra, chươngtrình viết bằng Java hoàn toàn có thể chạy trên những hệ điều hành quản lý khác nhau. Để lập trình Android, Eclipse cần được tích hợp bộ công cụ phát triểnAndroid ADT. 1.2.4. 2 Android StudioHình : Android StudioMột trong số những tính năng mới của môi trường tự nhiên tăng trưởng này đó là nóhỗ trợ tốt hơn việc bố cục tổng quan ứng dụng cho nhiều thiết bị khác nhau, bảo vệ rằng appviết ra hoàn toàn có thể thích hợp với màn hình hiển thị của cả smartphone lẫn tablet. Những thayđổi trong mã lập trình sẽ được hiển thị theo thời hạn thực trên công cụ mô phỏng đikèm. Google cũng bổ trợ thêm năng lực kéo thả những thành phần đồ họa để quátrình xây dựng ứng dụng trở nên thuận tiện và nhanh gọn hơn. Android Studio còncho phép xem lại app ở nhiều ngôn từ khác nhau trong cùng một giao diện để lậptrình viên hoàn toàn có thể chỉnh sửa những lỗi còn sống sót. Đặc biệt là tiếng Việt cũng đượchỗ trợ trong Android Studio. 1.3. WEB SERVICE1. 3.1. Giới thiệuWeb service được cho phép client và server tương tác được với nhau mặc dầu trongnhững môi trường tự nhiên khác nhau. Web service thì có dạng mở và dựa vào những tiêu chuẩn XML và HTTP là nềntảng kỹ thuật cho web service. Phần lớn kỹ thuật của web service được xây dựng lànhững dự án Bất Động Sản nguồn mở. Bởi vậy, chúng độc lập và quản lý và vận hành được với nhau. Web service thì rất linh động : Vì với UDDI và WSDL, thì việc diễn đạt và pháttriển web service hoàn toàn có thể được tự động hóa. Web service hoàn toàn có thể công bố ( publish ) và gọi triển khai qua mạng. Ngày nay web services được sử dụng rất nhiều trong những nghành khác nhaucủa đời sống. 3.1.1. 1 Ưu điểm – Dịch Vụ Thương Mại Web cung ứng năng lực hoạt động giải trí to lớn với những ứng dụng phầnmềm khác nhau chạy trên những nền tảng khác nhau. – Sử dụng những giao thức và chuẩn mở. Giao thức và định dạng tài liệu dựa trênvăn bản ( text ), giúp những lập trình viên thuận tiện hiểu được. – Nâng cao năng lực tái sử dụng. – Thúc đẩy góp vốn đầu tư những mạng lưới hệ thống ứng dụng đã sống sót bằng cách được cho phép những tiếntrình / tính năng nhiệm vụ đóng gói trong giao diện dịch vụ Web. 3.1.1. 2 Nhược điểm – Những thiệt hại lớn sẽ xảy ra vào tầm thời hạn chết của dịch vụ Web, giaodiện không biến hóa, hoàn toàn có thể lỗi nếu một máy khách không được tăng cấp, thiếu cácgiao thức cho việc quản lý và vận hành. – Có quá nhiều chuẩn cho dịch vụ Web khiến người dùng khó chớp lấy. – Phải chăm sóc nhiều hơn đến yếu tố bảo đảm an toàn và bảo mật thông tin. 1.3.2. Giới thiệu về ngôn từ PHPPHP ( viết tắt hồi quy ” PHP : Hypertext Preprocessor ” ) là một ngôn từ lậptrình ngữ cảnh hay một loại mã lệnh hầu hết được dùng để tăng trưởng những ứng dụngviết cho sever, mã nguồn mở, dùng cho mục tiêu tổng quát. Nó rất thích hợp vớiweb và hoàn toàn có thể thuận tiện nhúng vào trang HTML. Do được tối ưu hóa cho những ứngdụng web, vận tốc nhanh, nhỏgọn, cú pháp giống C và Java, dễ học và thời hạn xâydựng loại sản phẩm tương đối ngắn hơn so với những ngôn từ khác nên PHP đã nhanhchóng trở thành một ngôn từ lập trình web phổ cập nhất thếgiới. PHP được tăng trưởng từ một mẫu sản phẩm có tên là PHP / FI. PHP / FI do RasmusLerdorf tạo ra năm 1995, khởi đầu được xem như thể một tập con đơn thuần của cácmã ngữ cảnh Perl để theo dõi tình hình truy vấn đến bản sơ yếu lý lịch của ông trênmạng. 1.3.3. Giới thiệu về JSONJson ( JavaScript Object Noattion ) là 1 định dạng hoán vị tài liệu nhanh. Chúngdễ dàng cho tất cả chúng ta đọc và viết. Dễ dàng cho thiết bị nghiên cứu và phân tích và phát sinh. JSonlà cơ sở dựa trên tập hợp của ngôn từ lập trình JavaScript. JSon được xây dựng trên 2 cấu trúc :  Là tập hợp của những cặp tên và giá trị như name – value. Trong nhữngngôn ngữ khác nhau, đây dược nhận thấy như là 1 đối tượng người dùng ( object ), sựghi ( record ), cấu trúc ( struct ), từ điển ( dictionary ), bảng băm ( hashtable ), list khóa ( keyed list ), hay mảng phối hợp.  Là 1 tập hợp những giá trị đã được sắp xếp. 1.3.4. Giới thiệu hệ quản trị cơ sở tài liệu MySqlMySQL là hệ quản trị cơ sở tài liệu mã nguồn mở phổ cập nhất quốc tế vàđược những nhà tăng trưởng rất ưu thích trong quy trình tăng trưởng ứng dụng. VìMySQL là cơ sở tài liệu vận tốc cao, không thay đổi và dễ sử dụng, có tính khả chuyển, hoạtđộng trên nhiều hệ điều hành cung cấp một mạng lưới hệ thống lớn những hàm tiện ích rấtmạnh. Với vận tốc và tính bảo mật thông tin cao, MySQL rất thích hợp cho những ứng dụng cótruy cập CSDL trên internet. MySQL không tính tiền trọn vẹn cho nên vì thế bạn hoàn toàn có thể tải vềMySQL từ trang chủ. Nó có nhiều phiên bản cho những hệ quản lý và điều hành khác nhau : phiênbản Win32 cho những hệ điều hành quản lý dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, … MySQL được sử dụng cho việc hỗ trợ PHP, Perl, và nhiều ngôn từ khác, nó làm nơi tàng trữ những thông tin trên những website viết bằng PHP hay Perl ,. 1.4. KẾT CHƯƠNGChương này trình diễn những kim chỉ nan cơ bản về lập trình di động, lập trìnhAndroid, những dịch vụ trực tuyến và cơ sở tài liệu ship hàng cho việc xây dựng ứngdụng. Xây dựng ứng dụng DailyMoodz trên nền tảng AndroidCHƯƠNG 2 : PHÂN TÍCH THIẾT KẾ HỆ THỐNG2. 1. PHÂN TÍCH YÊU CẦU2. 1.1 Mô tả bài toán2. 1.1.1 Đối tượng2. 1.1.2 • Dành cho những người có nhu yếu vui chơi sau những giờ thao tác, hoặc trong thời hạn rảnh. 2.1.1. 3M ục đíchThực hiện những công dụng nhằm mục đích mục tiêu vui chơi cho người dùng : • Check In tâm trạng tại một vị trí, khu vực với icon Mood vàImage. • Chia sẻ ảnh với mọi người. • Kết bạn và trò chuyện2. 1.1.4 Triển khaiTừ những nghiên cứu và phân tích trên mạng lưới hệ thống sẽ được chia làm 2 phần : Cơ sở tài liệu : • Sử dung Web service và hệ quan trị cơ sở tài liệu Navicat. Ứng dụng : Là thành phần chương trình đặt tại thiết bị di động nền tảngAndroid. Chương trình sẽ tương tác trực tiếp với người sử dụng. 2.1.2 Phân tích nhu yếu bài toán2. 1.2.1 Người sử dụngNgười sử dụng điện thoại thông minh thông minh2. 1.2.2 Mục đích sử dụngThực hiện những công dụng nhằm mục đích mục tiêu vui chơi cho người dùng : SVTH : Bùi Xuân Thế – 11T2 Trang 22X ây dựng ứng dụng DailyMoodz trên nền tảng Android • Check In tâm trạng tại một vị trí, khu vực với icon Mood vàImage. • Chia sẻ ảnh với mọi người. • Két bạn và trò chuyện. 2.1.2. 3 Công nghệCông nghệ được sử dụng chia thành 2 phần : • ServiceNgôn ngữ lập trình PHP  Hệ quản trị CSDL MySQL  Công cụ tăng trưởng Notepad + +, Navicat … • Mobile  Ngôn ngữ lập trình Java-Android  Hệ quản trị cơ sở tài liệu SQLite  Android SDK  Android Studio2. 1.3 Mô tả những nhu yếu phi chức năng2. 1.3.1 Yêu cầu về tính năng của hệ thốngHiệu năng : Ứng dụng chạy nhanh và mượt, truy xuất cơ sở tài liệu nhanh. Tính chuẩn bị sẵn sàng : Ứng dụng có năng lực ship hàng mọi thời gian người dùngcần sử dụng. Tính thích hợp : Cài đặt và chạy được trên mọi thiết bị dùng hệ điềuhành Android 2.3 trở lên2. 1.3.2 Yêu cầu về giao diện người dùngGiao diện phong cách thiết kế dạng phẳng, đẹp, dễ nhìn, dễ sử dụng. Ngôn ngữ hiển thị bằng tiếng Anh. Font chữ của ứng dụng theo chuẩn UTF-8. SVTH : Bùi Xuân Thế – 11T2 Trang 23X ây dựng ứng dụng DailyMoodz trên nền tảng Android2. 1.3.3 Phân tích khả thiNhu cầu bảo mật thông tin thông tin cá thể ngày càng cao, người ta càng chútrọng đến yếu tố riêng tư khi sử dụng điện thoại cảm ứng mưu trí. Lượng người dùng điện thoại thông minh mưu trí chạy Android rất phần đông. Ứng dụng được phân phối không tính tiền cho mọi người dùng và hướng tới pháttriển trên mọi nền tảng di động thông dụng lúc bấy giờ. 2.1.3. 4C hi phí phát triểnĐiện thoại thông mình thời nay đang tăng trưởng những dòng điện thoại thông minh bìnhdân, nghĩa là ngân sách cho một chiếc điện thoại cảm ứng tương hỗ rất đầy đủ những tính năngmà chương trình nhu yếu thì trọn vẹn không đắt. Phát triển một ứng dụng Android rất thuận tiện với công cụ không tính tiền nhưAndroid Studio hay Eclipse và bộ ADT.SVTH : Bùi Xuân Thế – 11T2 Trang 24X ây dựng ứng dụng DailyMoodz trên nền tảng Android2. 1.4 Xác định những công dụng chính của hệ thốngBảng 2 : Bảng những chức năngMã chức năngTên chức năngM. 1R egisterM. 2L oginM. 3F orgot passwordM. 4E dit passwordM. 5C heck InM. 6M apsM. 7P ost ImageM. 8M oodM. 9F eedM. 10C hartM. 12S ettingsM. 13P rofileM. 14C onnectionsM. 15L ogoutSVTH : Bùi Xuân Thế – 11T2 Trang 25

Xem thêm  Cách tải video trên Youtube về điện thoại cực đơn giản cho bạn (2021)

Source: https://bem2.vn
Category: Ứng dụng hay

5/5 - (1 bình chọn)

Bài viết liên quan

Để lại ý kiến của bạn:

Email của bạn sẽ không được hiển thị công khai.