Mạng điện thoại di động xuất hiện tại Việt Nam từ đầu những năm 1990 và theo
thời gian số lượng các thuê bao cũng như các nhà cung cấp dịch vụ đi động tại Việt
Nam ngày càng tăng. Do nhu cầu trao đổi thông tin ngày càng tăng và nhu cầu sử dụng
sản phẩm công nghệ cao nhiều tính năng, cấu hình cao, chất lượng tốt, kiểu dáng mẫu
mà đẹp, phong phú nên nhà cung cấp phải luôn luôn cải thiện, nâng cao những sản
phẩm của mình. 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.
Cùng với sự phát triển của thị trường điện thoại di động là sự phát triển mạnh mẽ
của xu hướng lập trình phần mềm ứng dụng cho các thiết bị di động. Phần mềm, ứng
dụng cho điện thoại 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ũng phát triển mạnh mẽ và đang thay đổi từ ngày. Các hệ điều hành J2ME,
Android, IOS, Hybrid, Web based Mobile Application đã có 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, đã được nhà phát triển công nghệ rất nổi tiếng hiện nay là Google. Android
đã nhanh chóng là đối thủ cạnh tranh mạnh mẽ với các hệ điều hành trước đó và đang
là hệ điều hành di động của tương lai và được nhiều người ưa chuộng nhất.
Ngày nay, với sự phát triển nhanh chóng của xã hội, nhu cầu mua bán các loại
sản phẩm thông qua mạng Internet ngày càng phổ biến, vì vậy em đã chọn đề tài “Tìm
hiểu dịch vụ Web cho thiết bị di động và ứng dụng ” với mục đích nghiên cứu, tìm
hiểu về dịch vụ web trong hệ điều hành Android và xây dựng ứng dụng mua bán các
loại thiết bị điện tử để có thể đáp ứng được nhu cầu thiết yếu đó, giúp cho mọi người
có thể tiết kiệm chi phí, thời gian đi lại và còn có thể cập nhật một cách nhanh chóng
về thông tin sản phẩm thông qua ứng dụng một cách dễ dàng và tiện lợi
57 trang |
Chia sẻ: thientruc20 | Lượt xem: 636 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Đồ án Tìm hiểu dịch vụ web cho thiết bị di dộng va ứng dụng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
-------------------------------
ISO 9001:2015
ĐỒ ÁN TỐT NGHIỆP
NGÀNH: CÔNG NGHỆ THÔNG TIN
Sinh viên : Nguyễn Ngọc Hải
Giảng viên hướng dẫn: ThS. Phùng Anh Tuấn
HẢI PHÒNG - 2018
2
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
-----------------------------------
TIM HIỂU DỊCH VỤ WEB CHO THIẾT BỊ DI DỘNG VA
ỨNG DỤNG
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
NGÀNH: CÔNG NGHỆ THÔNG TIN
Sinh viên : Nguyễn Ngọc Hải
Giảng viên hướng dẫn : ThS. Phùng Anh Tuấn
HẢI PHÒNG - 2018
3
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
--------------------------------------
NHIỆM VỤ ĐỀ TÀI TỐT NGHIỆP
Sinh viên: Nguyễn Ngọc Hải Mã SV: 1412101135
Lớp: CT1701 Ngành: Công nghệ thông tin
Tên đề tài: Tìm hiểu dịch vụ Web cho thiết bị di động và ứng dụng
4
LỜI MỞ ĐẦU
Mạng điện thoại di động xuất hiện tại Việt Nam từ đầu những năm 1990 và theo
thời gian số lượng các thuê bao cũng như các nhà cung cấp dịch vụ đi động tại Việt
Nam ngày càng tăng. Do nhu cầu trao đổi thông tin ngày càng tăng và nhu cầu sử dụng
sản phẩm công nghệ cao nhiều tính năng, cấu hình cao, chất lượng tốt, kiểu dáng mẫu
mà đẹp, phong phú nên nhà cung cấp phải luôn luôn cải thiện, nâng cao những sản
phẩm của mình. 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.
Cùng với sự phát triển của thị trường điện thoại di động là sự phát triển mạnh mẽ
của xu hướng lập trình phần mềm ứng dụng cho các thiết bị di động. Phần mềm, ứng
dụng cho điện thoại 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ũng phát triển mạnh mẽ và đang thay đổi từ ngày. Các hệ điều hành J2ME,
Android, IOS, Hybrid, Web based Mobile Application đã có 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, đã được nhà phát triển công nghệ rất nổi tiếng hiện nay là Google. Android
đã nhanh chóng là đối thủ cạnh tranh mạnh mẽ với các hệ điều hành trước đó và đang
là hệ điều hành di động của tương lai và được nhiều người ưa chuộng nhất.
Ngày nay, với sự phát triển nhanh chóng của xã hội, nhu cầu mua bán các loại
sản phẩm thông qua mạng Internet ngày càng phổ biến, vì vậy em đã chọn đề tài “Tìm
hiểu dịch vụ Web cho thiết bị di động và ứng dụng ” với mục đích nghiên cứu, tìm
hiểu về dịch vụ web trong hệ điều hành Android và xây dựng ứng dụng mua bán các
loại thiết bị điện tử để có thể đáp ứng được nhu cầu thiết yếu đó, giúp cho mọi người
có thể tiết kiệm chi phí, thời gian đi lại và còn có thể cập nhật một cách nhanh chóng
về thông tin sản phẩm thông qua ứng dụng một cách dễ dàng và tiện lợi.
5
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à thầy giáo ThS. Phùng Anh Tuấn, thầy đã 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 thầy, 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 CT1701 đã 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..... năm 2018
Sinh viên
Nguyễn Ngọc Hải
6
MỤC LỤC
CHƯƠNG 1: HỆ ĐIỀU HÀNH ANDROID ................................................................... 9
1.1. Giới thiệu chung về Hệ điều hành Android .......................................................... 9
1.2. Kiến trúc hệ điều hành Android ......................................................................... 11
1.2.1. Tầng hạt nhân Linux .................................................................................... 11
1.2.2. Tầng thư viện và thực thi Android ............................................................... 12
1.2.3. Tầng khung ứng dụng .................................................................................. 13
1.2.4. Tầng ứng dụng ............................................................................................. 14
1.3. Mô tả hệ điều hành Android ............................................................................... 15
1.3.1. Giao diện ..................................................................................................... 15
1.3.2. Ứng dụng ..................................................................................................... 17
1.4. Sự đón nhận của người dùng đối với hệ điều hành Android .............................. 18
CHƯƠNG 2: MÔI TRƯỜNG PHÁT TRIỂN ỨNG DỤNG ANDROID ..................... 20
2.1. Môi trường phát triển.......................................................................................... 20
2.1.1. Phần mềm Android Studio ........................................................................... 20
2.1.2. Bộ công cụ phát triển Java SE Development Kit (JDK) ............................. 20
2.1.3. Máy ảo Android Virtual Device (AVD) ....................................................... 21
2.2. Các thành phần trong một dự án Android .......................................................... 21
2.2.1. Tệp cấu hình dự án AndroidManifest.xml ................................................... 21
a. Thành phần ứng dụng .................................................................................... 21
b. Quyền truy xuất và sử dụng tài nguyên ......................................................... 22
c. Phiên bản SDK .............................................................................................. 22
2.2.2. Tệp R.java .................................................................................................... 22
2.3. Vòng đời ứng dụng Android .............................................................................. 22
2.3.1. Chu kỳ sống của các thành phần ................................................................. 22
2.3.2. Activity Stack ............................................................................................... 23
2.3.3. Các trạng thái của chu kỳ sống ................................................................... 23
2.3.4. Thời gian sống của Activity ......................................................................... 24
2.3.5. Các phương thức của chu kỳ sống............................................................... 24
2.4. Các thành phần giao diện trong Android ............................................................ 25
2.4.1. View và ViewGroup ..................................................................................... 25
a. TextView ....................................................................................................... 26
b. EditText ......................................................................................................... 26
c. Button............................................................................................................. 27
d. ImageView .................................................................................................... 28
7
e. ListView......................................................................................................... 28
2.4.2 Layout ........................................................................................................... 29
a. RelativeLayout ............................................................................................... 29
b. TableLayout ................................................................................................... 30
c. FrameLayout .................................................................................................. 30
d. LinearLayout ................................................................................................. 30
CHƯƠNG 3: CƠ SỞ DỮ LIỆU WEB VÀ DỊCH VỤ WEB ........................................ 32
3.1. Mạng Internet ..................................................................................................... 32
3.1.1. Khái niệm ..................................................................................................... 32
3.1.2. Lợi ích của Internet trong cuộc sống .......................................................... 32
3.1.3. Các chương trình duyệt Web thông dụng hiện nay ..................................... 32
3.2. Web Hosting ....................................................................................................... 33
3.2.1. Khái niệm ..................................................................................................... 33
3.2.2. Các loại hosting ........................................................................................... 33
3.2.3. Các thông số cần biết trong web hosting .................................................... 34
3.2.4. Tại sao cần phải mua web hosting ? ........................................................... 34
3.2.5. Cách đăng kí một web hosting miễn phí ...................................................... 34
3.3. Cơ sở dữ liệu web ............................................................................................... 38
3.3.1. Khái niệm ..................................................................................................... 38
3.3.2. Tổ chức dữ liệu ............................................................................................ 39
3.3.3. Phần mềm Cơ sở dữ liệu Web ..................................................................... 39
3.3.4. Đối tượng áp dụng ....................................................................................... 39
3.3.5. Hệ quản trị CSDL MySQL ........................................................................... 39
3.4. Dịch vụ web ....................................................................................................... 40
3.4.1. Giới thiệu ..................................................................................................... 40
3.4.2. Các công nghệ xây dựng dịch vụ Web......................................................... 40
3.4.3. Đặc điểm của dịch vụ Web .......................................................................... 41
3.4.4. Kiến trúc của dịch vụ Web........................................................................... 41
3.4.5. Các thành phần chính của dịch vụ web ....................................................... 44
3.4.6. Xây dựng một dịch vụ Web .......................................................................... 44
3.4.7. Các dạng tương tác giữa Web Service với ứng dụng trên TBDĐ ............... 45
a. XML - eXtensible Markup Language ........................................................... 45
b. Định dạng JSON - JavaScript Object Notation ............................................. 46
3.4.8. Cấu trúc chung Web Service viết bằng PHP cho ứng dụng di động .......... 49
CHƯƠNG 4: CHƯƠNG TRÌNH THỬ NGHIỆM ........................................................ 50
4.1. Phát biểu bài toán ............................................................................................... 50
4.2. Thiết kế chức chức năng hệ thống ...................................................................... 50
8
4.2.1. Chức năng xem sản phẩm theo loại sản phẩm ............................................ 50
4.2.2. Chức năng quản lí giỏ hàng ........................................................................ 51
4.2.3. Chức năng thanh toán sản phẩm ................................................................. 51
4.3. Thiết kế dữ liệu ................................................................................................... 52
4.3.1. Bảng thông tin sản phẩm ............................................................................. 52
4.3.2. Bảng thông tin sản phẩm mới nhất .............................................................. 52
4.3.3. Bảng chi tiết đơn hàng ................................................................................ 52
4.3.4. Bảng thông tin loại sản phẩm ...................................................................... 53
4.3.5. Bảng thông tin đơn hàng ............................................................................. 53
4.4. Một số giao diện chương trình ........................................................................... 53
4.4.1 Giao diện màn hình chính và thanh menu của ứng dụng ............................. 53
4.4.2. Giao diện dánh sách các sản phẩm của Điện thoại và Laptop ................... 54
4.4.3. Giao diện thông tin chi tiết của các sản phẩm ............................................ 54
4.4.4. Giao diện các sản phẩm trong giỏ hàng ..................................................... 55
4.4.5. Giao diện thanh toán sản phẩm và thông tin liên hệ .................................. 55
KẾT LUẬN ................................................................................................................... 56
TÀI LIỆU THAM KHẢO ............................................................................................. 57
9
CHƯƠNG 1: HỆ ĐIỀU HÀNH ANDROID
1.1. Giới thiệu chung về Hệ điều hành Android
Android là một hệ điều hành cho thiết bị di động dựa trên nền tảng linux phiên
bản 2.6 dành cho các dòng điện thoại SmartPhone. Đầu tiên được ra đời bởi công ty
liên hợp Android, sau đó được Google mua lại và phát triển từ năm 2005 và trở thành
một hệ điều hành di động mã nguồn mở, miễn phí, mạnh mẽ và được ưa chuộng cao
trên thế giới [1].
Hình 1.1. Biểu tượng của Hệ điều hành Android
Hệ điều hành android một hệ điều hành rất mạnh mạnh, có bảo mật cao, hỗ trợ
được nhiều công nghệ tiên tiến như 3G, GPS, EDGE, Wifi.. tương thích với nhiều
phần cứng, hỗ trợ nhiều loại bộ nhập dữ liệu như keyboard, touch và trackball.
Android là hệ điều hành di động nên có khả năng kết nối cao với các mạng không dây.
Hỗ trợ công nghệ OpenGL nên có khả năng chơi các phương tiện media, hoạt hình
cũng như trình diễn các khả năng đồ họa khác cực tốt, là tiền đề để phát triển các ứng
dụng có giao diện phức tạp chẳng hạn như là các trò chơi [1].
Hình 1.2. Các tính năng hỗ trợ trong Hệ hiều hành Android
10
Android liên tục được phát triển, mỗi bản cập nhật từ google là mỗi lần android
được tối ưu hóa để hoạt động tốt hơn, nhanh và ổn định hơn, hỗ trợ thêm công nghệ
mới. Chẳng hạn như theo một đánh giá thì android phiên bản 2.2 hoạt động nhanh hơn
bản 2.1 tới 450%. Hiện nay, phiên bản mới nhất 2.3 phát hành ngày 6/12/2010 và đang
tiếp tục được cập nhật.
Năm 2008, hệ điều hành android đã chính thức mở toàn bộ mã nguồn, điều đó
cho phép các hãng điện thoại có thể đem mã nguồn về tùy chỉnh, thiết kế lại sao cho
phù hợp với mỗi mẫu mã điện thoại của họ và điều quan trọng nữa là hệ điều hành mở
này hoàn toàn miễn phí, không phải trả tiền nên giúp họ tiết kiệm khá lớn chi phí phát
triển hệ điều hành. Những điều đó là cực kỳ tốt không chỉ đối với các hãng sản xuất
điện thoại nhỏ mà ngay cả với những hãng lớn như Samsung, HTC....
Với Google, vì android hoàn toàn miễn phí, Google không thu tiền từ những
hãng sản xuất điện thoại, tuy không trực tiếp hưởng lợi từ android nhưng bù lại,
những dịch vụ của hãng như Google Search, Google Maps,... nhờ có android mà có thể
dễ dàng xâm nhập nhanh vào thị trường di động vì mỗi chiếc điện thoại được sản xuất
ra đều được tích hợp hàng loạt dịch vụ của Google. Từ đó hãng có thể kiếm bội, chủ
yếu là từ các nguồn quảng cáo trên các dịch vụ đó [1].
Với các nhà phát triển ứng dụng (developers), việc hệ điều hành android được
sử dụng phổ biến đồng nghĩa với việc họ có thể thoải mái phát triển ứng dụng trên nền
android với sự tin tưởng là ứng dụng đó sẻ có thể chạy được ngay trên nhiều dòng điện
thoại của các hãng khác nhau. Họ ít phải quan tâm là đang phát triển cho điện thoại
nào, phiên bản bao nhiêu vì nền tảng android là chung cho nhiều dòng máy, máy ảo
Java đã chịu trách nhiệm thực thi những ứng dụng phù hợp với mỗi dòng điện thoại
mà nó đang chạy. Tất cả các chương trình ứng dụng được viết bằng ngôn ngữ Java kết
hợp với XML nên có khả năng khả chuyển cao.
- Một số hãng sản xuất điện thoại có sử dụng hệ điều hành android tiêu biểu :
HTC với các dòng Desire HD, Evo 4G, DROID ERIS, Desire Z, Hero,
Desire, Tattoo, Wildfire, Droid Incredible, Legend, Magic, Google Nexus
One, Dream, Aria, Paradise .
LG với các dòng GT540 Optimus, Optimus Chic E720, Optimus One P500,
GW620, Optimus Z, Optimus Q, KH5200 Andro-1, GW880, C710Aloha .
11
MOTOROLA với các dòng MILESTONE 2, BACKFLIP, Droid XTreme,
MT710 ZHILING, MILESTONE, XT720 MOTOROI, A1680, XT800
ZHISHANG, DEFY, CHARM, XT806...
SAMSUNG với các dòng máy I9000 Galaxy S, Galaxy Tab, Epic 4G,
i5510, I5500 Galaxy 5, I7500 Galaxy, I5800 Galaxy 3, M110S Galaxy S,
I6500U Galaxy, Galaxy Q, I5700 Galaxy Spica, I8520 Galaxy Beam, I909
Galaxy S.
SONY : XPERIA X10, XPERIA X10 mini, XPERIA X8.
ACER với các dòng máy beTouch T500, Liquid E, Stream, Liquid, beTouch
E110, beTouch E130, beTouch E400, beTouch E120, Liquid Metal.
Ngoài ra còn nhiều hãng điện thoại vừa và nhỏ khác nữa cũng sử dụng hệ
điều hành android trong sản phẩm của mình...[2].
1.2. Kiến trúc hệ điều hành Android
Hệ điều hành android có 4 tầng từ dưới lên trên là tầng hạt nhân Linux (Phiên
bản 2.6), Tầng Libraries & Android runtime, Tầng Application Framework và trên
cùng là tầng Application [2].
Hình 1.3. Kiến trúc của Hệ điều hành Android
1.2.1. Tầng hạt nhân Linux1
Hệ điều hành android được phát trển dựa trên hạt nhân linux, cụ thể là hạt nhân
linux phiên bản 2.6, điều đó được thể hiện ở lớp dưới cùng này. Tất cả mọi hoạt động
1 Linux Kernel layer
12
của điện thoại muốn thi hành được thì đều được thực hiện ở mức cấp thấp ở lớp này
bao gồm quản lý bộ nhớ (memory management), giao tiếp với phần cứng (driver
model), thực hiện bảo mật (security), quản lý tiến trình (process) [1][2].
Tuy được phát triển dựa vào nhân linux nhưng thực ra nhân linux đã được nâng
cấp và sửa đổi rất nhiều để phù hợp với tính chất của những thiết bị cầm tay như hạn
chế về bộ vi xử lý, dung lượng bộ nhớ, kích thước màn hình, nhu cần kết nối mạng
không dây...
- Tầng này có các thành phần chủ yếu :
Display Driver : Điều khiển việc hiển thị lên màn hình cũng như thu nhận
những điều khiển của người dùng lên màn hình (di chuyển, cảm ứng...)
Camera Driver : Điều kiển hoạt động của camera, nhận luồng dữ liệu từ
camera trả về.
Bluetooth Driver : Điều khiển thiết bị phát và thu sóng Bluetooth.
USB driver : Quản lý hoạt động của các cổng giao tiếp USB.
Keypad driver : Điều khiển bàn phím.
Wifi Driver : Chịu trách nhiệm về việc thu phát sóng wifi.
Audio Driver : điều khiển các bộ thu phát âm thanh, giải mã các tính hiệu
dạng audio thành tín hiệu số và ngược lại .
Binder IPC Driver : Chịu trách nhiệm về việc kết nối và liên lạc với mạng
vô tuyến như CDMA, GSM, 3G, 4G, E để đảm bảo những chức năng truyền
thông được thực hiện.
M-System Driver : Quản lý việc đọc ghi... lên các thiết bị nhớ như thẻ SD,
flash .
Power Madagement : Giám sát việc tiêu thụ điện năng