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

xây dựng ứng dụng quản lý hàng hóa trên thiết bị di độ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 (2.95 MB, 75 trang )

TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA KHOA HỌC TỰ NHIÊN
BỘ MÔN TIN HỌC ỨNG DỤNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
XÂY DỰNG ỨNG DỤNG
QUẢN LÝ HÀNG HÓA
TRÊN THIẾT BỊ DI ĐỘNG ANDROID

Sinh viên thực hiện:

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

NGUYỄN THANH HOÀNG
MSSV: 1101878

ThS. HỒ VĂN TÚ

Cần Thơ, 2014


TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA KHOA HỌC TỰ NHIÊN
BỘ MÔN TIN HỌC ỨNG DỤNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
XÂY DỰNG ỨNG DỤNG
QUẢN LÝ HÀNG HÓA
TRÊN THIẾT BỊ DI ĐỘNG ANDROID
Sinh viên thực hiện:


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

NGUYỄN THANH HOÀNG
MSSV: 1101878

ThS. HỒ VĂN TÚ

Cán bộ phản biện
Luận văn được bảo vệ tại: Hội đồng chấm luận văn tốt nghiệp Bộ môn
Tin học Ứng dụng Khoa Khoa học Tự nhiên, Trường Đại học Cần Thơ
vào ngày 12 tháng 12 năm 2014
Mã số đề tài:
Có thể tìm hiểu luận văn tại:
- Trung tâm Học liệu, Trường Đại học Cần Thơ
- Website: />
Cần Thơ, 2014


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

LỜI CẢM ƠN

Trong suốt quá trình học tập, rèn luyện đặc biệt là giai đoạn thực hiện luận văn
“Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android”, tôi đã gặp rất
nhiều khó khăn và trở ngại. Tuy nhiên nhờ có sự hướng dẫn từ Thầy, Cô và sự giúp đỡ
từ bạn bè cộng với sự cố gắng và nỗ lực của bản thân, tôi đã hoàn thành luận văn này.
Tôi xin gởi lời cảm ơn chân thành nhất đến:
Quý Thầy, Cô trong bộ môn Tin học Ứng Dụng – Khoa Khoa học Tự Nhiên –
Trường Đại học Cần Thơ đã tận tình truyền đạt kiến thức trong 4 năm học tập. Với
vốn kiến thức tiếp thu trong quá trình học đã tạo nền tảng giúp tôi thực hiện luận văn

này. Xin gởi lời tri ân đến giáo viên hướng dẫn ThS. Hồ Văn Tú đã tận tình hướng dẫn
và góp ý cho tôi rất nhiều trong quá trình làm luận văn.
Bạn bè trong lớp Tin học Ứng dụng K36 đã kịp thời chia sẻ và đưa ra những
góp ý cho đề tài.
Mặc dù đã cố gắng hoàn thành luận văn này, nhưng với lượng kiến thức có hạn
về một lĩnh vực mới sẽ khó tránh khỏi những thiếu sót và hạn chế. Do đó, tôi rất mong
nhận được sự nhận xét và góp ý từ quí Thầy, Cô, bạn bè để có thể rút kinh nghiệm và
hoàn thiện hơn.
Tôi xin chân thành cảm ơn!
Cần Thơ, ngày 1 tháng 12 năm 2014
Sinh viên thực hiện

Nguyễn Thanh Hoàng

i


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

NHẬN XÉT CỦA CÁN BỘ HƢỚNG DẪN

....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................

....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................

ii


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

NHẬN XÉT CỦA CÁN BỘ PHẢN BIỆN

....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................

....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................
....................................................................................................................................................................

iii


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

MỤC LỤC
MỤC LỤC .....................................................................................................................iv
DANH MỤC TỪ VIẾT TẮT ..................................................................................... vii
DANH MỤC HÌNH VẼ............................................................................................. viii
DANH MỤC BẢNG ...................................................................................................... x
TÓM TẮT .....................................................................................................................xi
ABSTRACT ................................................................................................................ xii
CHƯƠNG 1: CHƯƠNG MỞ ĐẦU.............................................................................. 1
1.1 LÝ DO CHỌN ĐỀ TÀI ....................................................................................... 1

1.2 MỤC TIÊU VÀ NHIỆM VỤ ............................................................................... 2
1.3 ĐỐI TƯỢNG NGHIÊN CỨU VÀ PHẠM VI HỆ THỐNG ............................. 2
1.3.1

Đối tượng nghiên cứu.................................................................................. 2

1.3.2

Phạm vi chức năng ...................................................................................... 2

1.3.3

Phạm vi yêu cầu kỹ thuật ............................................................................ 2

1.4 PHƯƠNG PHÁP NGHIÊN CỨU ....................................................................... 3
1.4.1

Về phương pháp thu thập thông tin ............................................................. 3

1.4.2

Về lý thuyết ................................................................................................. 3

1.4.3

Về công nghệ............................................................................................... 3

1.5 Ý NGHĨA THỰC TIỄN CỦA ỨNG DỤNG ...................................................... 3
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ............................................................................. 4
2.1 SƠ LƯỢC QUÁ TRÌNH PHÁT TRIỂN CỦA ANDROID [3] ........................ 4

2.1.1

Giới thiệu về Android ................................................................................. 4

2.1.2

Lịch sử phát triển......................................................................................... 4

2.2 DELVING VỚI MÁY ẢO DALVIK [3] ............................................................ 9
2.3 KIẾN TRÚC CỦA ANDROID [3] ...................................................................... 9
2.3.1

Linux kernel .............................................................................................. 10

2.3.2

Library và Android Runtime ..................................................................... 11

2.3.2.1 Library ................................................................................................... 11
2.3.2.2 Android runtime ..................................................................................... 12
2.3.3

Framework ................................................................................................ 12

2.3.4

Aplication .................................................................................................. 13
iv



Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
2.4 CÁC THÀNH PHẦN CỦA ANDROID [3]...................................................... 14
2.4.1 Thành phần của một chương trình Android................................................... 14
2.4.1.1 Activity .................................................................................................. 14
2.4.1.2 Intent ...................................................................................................... 16
2.4.1.3 Service ................................................................................................... 16
2.4.1.4 Broadcast Receiver ................................................................................ 17
2.4.1.5 Content Provider .................................................................................... 18
2.4.1.6 View ....................................................................................................... 18
2.4.1.7 Lưu trữ dữ liệu ....................................................................................... 20
2.4.1.8 SQLite .................................................................................................... 20
2.4.1.9 Manifest File .......................................................................................... 21
2.4.1.10 Giao diện người dùng trong Android ................................................. 21
2.4.2

Bắt sự kiên trong Android ......................................................................... 22

2.4.3

Menu.......................................................................................................... 22

2.5 CÁC THÀNH PHẦN TRONG MỘT ANDROID PROJECT [3] ................. 23
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ ỨNG DỤNG....................................... 27
3.1 ĐẶC TẢ HỆ THỐNG ........................................................................................ 27
3.1.1

Giới thiệu ................................................................................................... 27

3.1.2


Mô tả bài toán............................................................................................ 27

3.2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG ............................................................ 27
3.2.1

Xây dựng các thực thể ............................................................................... 27

3.2.2

Mô hình thực thể mối kết hợp ................................................................... 30

3.2.3

Mô hình dữ liệu vật lý (Physical Data Model - PDM).............................. 32

3.2.4

Lược đồ cơ sở dữ liệu quan hệ .................................................................. 33

3.2.5

Sơ đồ Use Case ......................................................................................... 35

3.2.5.1 Use Case quản lý nhà cung cấp ............................................................. 35
3.2.5.2 Use Case quản lý nhập hàng hóa ........................................................... 36
3.2.5.3 Use Case quản lý khách hàng ................................................................ 36
3.2.5.4 Use Case quản lý hóa đơn bán ............................................................... 37
3.2.6

Sơ đồ tuần tự ............................................................................................. 37


3.2.6.1 Thêm nhà cung cấp ................................................................................ 37
v


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
3.2.6.2 Thêm hàng hóa....................................................................................... 38
3.2.6.3 Thêm khách hàng ................................................................................... 38
3.2.6.4 Thêm hóa đơn bán ................................................................................. 39
3.3 KẾT QUẢ ĐẠT ĐƯỢC ..................................................................................... 40
3.3.1

Về lý thuyết ............................................................................................... 40

3.3.2

Về chương trình......................................................................................... 40

3.4 ỨNG DỤNG QUẢN LÝ HÀNG HÓA TRÊN THIẾT BỊ DI ĐỘNG
ANDROID ................................................................................................................. 41
3.4.1

Danh sách các màn hình ............................................................................ 41

3.4.2

Mô tả chi tiết mỗi màn hình ...................................................................... 42

3.4.2.1 Màn hình chính của chương trình .......................................................... 42
3.4.2.2 Màn hình thêm nhà cung cấp ................................................................. 43

3.4.2.3 Màn hình danh sách nhà cung cấp ......................................................... 44
3.4.2.4 Màn hình chỉnh sửa nhà cung cấp ......................................................... 45
3.4.2.5 Màn hình thêm hàng hóa ....................................................................... 46
3.4.2.6 Màn hình danh sách hàng hóa ............................................................... 47
3.4.2.7 Màn hình chỉnh sửa hàng hóa ................................................................ 48
3.4.2.8 Thông tin chi tiết hàng hóa .................................................................... 49
3.4.2.9 Màn hình thêm khách hàng.................................................................... 50
3.4.2.10 Màn hình danh sách khách hàng ........................................................ 51
3.4.2.11 Màn hình chỉnh sửa khách hàng ......................................................... 52
3.4.2.12 Màn hình thêm hóa đơn bán ............................................................... 53
3.4.2.13 Màn hình danh sách hóa đơn bán ....................................................... 54
3.4.2.14 Màn hình chỉnh sửa hóa đơn bán ....................................................... 55
3.4.2.15 Màn hình báo cáo ............................................................................... 56
3.4.2.16 Màn hình sao lưu và phục hồi cơ sở dữ liệu ...................................... 57
3.4.2.17 Màn hình tìm kiếm hàng hóa .............................................................. 58
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ................................................................. 59
DANH MỤC TÀI LIỆU THAM KHẢO ................................................................... 61

vi


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

DANH MỤC TỪ VIẾT TẮT
 API: Application Programming Interface (Giao diện lập trình ứng dụng).
 CPU: Central Processing Unit (Đơn vị xử lý trung tâm).
 CSDL: Cơ sở dữ liệu.
 DTD: Document Type Definition (Định nghĩa kiểu văn bản).
 GPS: Global Positioning System (Hệ thống định vị toàn cầu).
 HD: High-Definition (Độ nét cao).

 HTML: HyperText Markup Language (Ngôn ngữ đánh dấu siêu văn bản).
 JSON: JavaScript Object Notation (Định dạng trao đổi dữ liệu cực nhẹ).
 OOP: Object-Oriented Programming (Lập trình hướng đối tượng).
 OHA: Open Handset Alliance (Liên minh thiết bị cầm tay mở rộng).
 SDK: Software Development Kit (Bộ công cụ phát triển phần mềm).
 XML: eXtensible Markup Language (Ngôn ngữ đánh dấu mở rộng).
 SQLITE: Hệ quản trị cơ sở dữ liệu.
 HĐH: Hệ điều hành.

vii


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

DANH MỤC HÌNH VẼ
Hình 1.1. Các thành viên của liên minh di động mở. ...................................................... 5
Hình 2.1: Cấu trúc hệ thống Android. ............................................................................. 9
Hình 2.2: Cấu trúc Linux kernel .................................................................................... 10
Hình 2.3: Cấu trúc Library và Android runtime ............................................................ 11
Hình 2.4: Cấu trúc Framework ...................................................................................... 12
Hình 2.5 Chu kỳ sống của activity ................................................................................ 15
Hình 2.6: Cấu trúc truyền tải dữ liệu giữa các Activity ................................................ 16
Hình 2.7: Cấu trúc của một service ............................................................................... 17
Hình 2.8: Các thành phần trong một Android project ................................................... 23
Hình 3.1: Mối kết hợp hàng hóa với nhà cung cấp ....................................................... 30
Hình 3.2: Mối kết hợp hàng hóa với khách hàng .......................................................... 31
Hình 3.3: Mô hình dữ liệu quan niệm ........................................................................... 32
Hình 3.4: Mô hình dữ liệu vật lý ................................................................................... 32
Hình 3.5: Lược đồ cơ sở dữ liệu quan hệ ...................................................................... 33
Hình 3.6: Sơ đồ Use Case quản lý nhà cung cấp........................................................... 35

Hình 3.7: Use Case quản lý nhập hàng hóa ................................................................... 36
Hình 3.8: Use Case quản lý khách hàng ........................................................................ 36
Hình 3.9: Use Case quản lý hóa đơn bán ...................................................................... 37
Hình 3.10: Sơ đồ tuần tự thêm nhà cung cấp ................................................................ 37
Hình 3.11: Sơ đồ tuần tự thêm hàng hóa ....................................................................... 38
Hình 3.12: Sơ đồ tuần tự thêm khách hàng ................................................................... 38
Hình 3.13: Sơ đồ tuần tự thêm hóa đơn bán .................................................................. 39
Hình 3.14: Màn hình chính của chương trình ............................................................... 42
Hình 3.15: Màn hình thêm nhà cung cấp ...................................................................... 43
Hình 3.16: Màn hình danh sách nhà cung cấp .............................................................. 44
Hình 3.17: Màn hình chỉnh sửa nhà cung cấp ............................................................... 45
Hình 3.18: Màn hình thêm hàng hóa ............................................................................. 46
Hình 3.19: Màn hình danh sách hàng hóa ..................................................................... 47
Hình 3.20: Màn hình chỉnh sửa hàng hóa...................................................................... 48
Hình 3.21: Màn hình thông tin chi tiết hàng hóa........................................................... 49
viii


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
Hình 3.22: Màn hình thêm khách hàng ......................................................................... 50
Hình 3.23: Màn hình danh sách khách hàng ................................................................. 51
Hình 3.24: Màn hình chỉnh sửa khách hàng .................................................................. 52
Hình 3.25: Màn hình thêm hóa đơn bán ........................................................................ 53
Hình 3.26: Màn hình danh sách hóa đơn bán ................................................................ 54
Hình 3.27: Màn hình chỉnh sửa hóa đơn bán ................................................................ 55
Hình 3.28: Màn hình báo cáo ........................................................................................ 56
Hình 3.29: Màn hình backup và restore cơ sở dữ liệu................................................... 57

ix



Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

DANH MỤC BẢNG
Bảng 3.1 Thuộc tính của thực thể nhà cung cấp............................................................ 28
Bảng 3.2 Thuộc tính của thực thể khách hàng .............................................................. 28
Bảng 3.3 Thuộc tính của thực thể hàng hóa .................................................................. 28
Bảng 3.4 Thuộc tính của thực thể hóa đơn nhập ........................................................... 29
Bảng 3.5 Thuộc tính của thực thể hóa đơn bán ............................................................. 29
Bảng 3.6 Thuộc tính của thực thể nhân viên ................................................................. 29

x


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

TÓM TẮT
Hiện nay, việc kinh doanh của các cửa hàng bách hóa ngày càng phát triển.
Điều đó làm cho việc phát triển đội ngũ nhân viên bán hàng hoặc tiếp thị tại các cửa
hàng nhằm mục giới thiệu hàng hóa, sản phẩm cũng không ngừng phát triển theo. Bên
cạnh đó là sự phát triển của những chiếc điện thoại thông minh. Do đó, việc phát triển
các ứng dụng quản lý các hàng hóa trên điện thoại thông minh là một điều cần thiết.
Ứng dụng này giúp cho việc quản lý hàng hóa, sản phẩm của các nhân viên bán hàng
hoặc tiếp thị trở nên tiện lợi hơn và tiết kiệm thời gian hơn.
Mục tiêu của luận văn là tìm hiểu công nghệ lập trình ứng dụng Android để hoàn
thành ứng dụng quản lý hàng hóa. Luận văn gồm năm phần chính. Phần một giới thiệu
lý do chọn đề tài, mục tiêu, nhiệm vụ, đối tượng và phương pháp nghiên cứu, ý nghĩa
thực tiễn của ứng dụng. Phần hai khái quát về cơ sở lý thuyết cần cho thiết kế ứng
dụng. Phần ba phân tích và thiết kế hệ thống, sơ đồ ứng dụng, xây dựng ứng dụng thực
tiễn. Cuối cùng là kết luận và hướng phát triển cho ứng dụng.

Ứng dụng quản lý hàng hóa được viết bằng ngôn ngữ Java trên nền tảng Android
và sử dụng hệ quản trị cơ sở dữ liệu SQLite.
Sau khi hoàn thành, ứng dụng có thể xử lý được các yêu cầu cơ bản như lưu trữ,
cập nhật thông tin hàng hóa, tìm kiếm, báo cáo thông tin theo yêu cầu. Đồng thời cũng
cho phép nhập và xuất thông tin hàng hóa.
Về mặt ý nghĩa, ứng dụng này sẽ nâng cao hiệu quả quản lý hàng hóa cho các
nhân viên bán hàng trở nên nhanh chóng và chính xác hơn.
Từ khóa: hàng hóa, hệ điều hành, Android, cơ sở dữ liệu, quản lý.

xi


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

ABSTRACT
Nowadays, the business of the grocery stores more and more develop. That
makes the development of the sale staff or market staff at the stores in order to
introduce goods, products, which also develop. Besides that, this is the development of
smartphones. Therefore, it is necessary to develop the management application of
goods in smartphones. This application is going to help the management of goods,
products of the sale staff or market staff, which becomes more and more convenient
and time-saving.
The purpose of the dissertation is finding out the technology programming of
Android application to complete the grocery store’s management application. The
dissertation has 5 main parts. Part 1 the introduction of reasons for selecting the topic,
aims, mission, objects and research methods, practical significance of the application.
Part 2 the overview of the theoretical bases needed for designing of application. Part 3
analysis and designing of system, application diagrams, construction for practical
applications. Finally is that, the conclusion and the tendency for development of
application.

This application written in Java and management system use SQLite database
on the Android.
After conplete the construction, this aplication can handle the basic re
quirements, such as storage, update information goods, search and statistical
information as required. In addition, it also allow import and export goods.
In terms of significance, this application will enhance effective management of
goods for the salesperson becomes more quickly and accurately.
Key words: goods, management system, Android, database, management.

xii


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

CHƢƠNG 1: CHƢƠNG MỞ ĐẦU
1.1

LÝ DO CHỌN ĐỀ TÀI

Ngày nay, với sự phát triển của công nghệ, đặc biệt là lĩnh lực công nghệ thông
tin đã đem lại nhiều thành tựu phục vụ nhu cầu của con người như văn hóa, giáo dục,
an ninh quốc phòng…. Trong đó lĩnh vực di động đã góp phần mang lại nhiều lợi ích
cho con người, như dễ dàng và thuận tiện liên lạc với nhau dù ở rất xa nhau, làm giảm
chi phí đi lại.... Điện thoại bây giờ không chỉ đơn thuần là để nghe và gọi, mà còn có
rất nhiều ứng dụng và tiện ích. Từ một chiếc điện thoại chỉ với mục đích phục vụ nhu
cầu liên lạc của con người, các nhà phát triển đã ứng dụng công nghệ thông tin để cài
đặt hệ điều hành cho chúng, nhằm tạo ra những chiếc điện thoại thông minh có thể đáp
ứng tốt hơn không chỉ những nhu cầu về liên lạc mà còn những nhu cầu liên quan đến
công việc, học tập và giải trí theo xu hướng ứng dụng di động ngày nay. Từ sự phát
triển đó, hệ điều hành Android được ra đời và đã tạo ra một dấu ấn mạnh mẽ trong

ngành công nghệ di động. Kèm theo sự phát triển nhanh chóng đó của hệ điều hành
Android thì những ứng dụng quản lý cũng đang phát triển hết sức mạnh mẽ nhằm phục
vụ tốt hơn cho những nhu cầu thiết yếu cho con người. Lập trình ứng dụng, lập trình
quản lý trên di động cũng là tiềm năng trong sự phát triển của công nghệ di động.
Và từ đó các ứng dụng quản lý trên di động xuất hiện ngày càng nhiều, trên các
hệ điều hành khác nhau như Android, iOS, RIM Blackberry OS, Symbian…. Và
Android là hệ điều hành do Google mua về và cho ra đời vào năm 2007, đây là hệ điều
hành tương đối mới và đang rất được ưa chuộng trên thị trường từ khi nó ra đời, nên
tôi đã chọn đề tài “Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động
Android”.

Trang 1


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
1.2

MỤC TIÊU VÀ NHIỆM VỤ

Mục tiêu: Tìm hiểu được các công nghệ lập trình cần thiết trên nền Android để hoàn
thành ứng dụng quản lý một cách hiệu quả.
-

Hiểu về nguyên lý hoạt động của Android, các thành phần của hệ thống cũng như
của một ứng dụng thực thi trên nền Android.

-

Tìm hiểu và áp dụng được các công nghệ lập trình trên nền Android như ngôn ngữ
JAVA, cơ sở dữ liệu SQLite.


Nhiệm vụ: Nghiên cứu về Android và bộ thư viện lập trình trên nền Android. Tìm
hiểu các dịch vụ liên quan và xây dựng ứng dụng quản lý hàng hóa.
1.3

ĐỐI TƢỢNG NGHIÊN CỨU VÀ PHẠM VI HỆ THỐNG

1.3.1 Đối tƣợng nghiên cứu
-

Ngôn ngữ JAVA, PHP, JSON, XML.

-

Cơ sở dữ liệu SQLite.

-

Công cụ Android SDK & Eclipse.

-

Hệ điều hành và tài nguyên hệ thống Android.

1.3.2 Phạm vi chức năng
Đề tài xây dựng một chương trình để quản lý thông tin hàng hóa. Cụ thể là
thông tin về tên hàng hóa, ngày nhập hàng hóa, giá nhập, giá bán của hàng hóa, quản
lý về số lượng, các hóa đơn bán cho khách hàng,… đáp ứng các nhu cầu cơ bản cho
người sử dụng như: xem, cập nhật, tìm kiếm, thống kê thông tin.
Ứng dụng được thiết kế nhằm phục vụ cho các nhân viên tiếp thị, các đại lý vừa

và nhỏ.
1.3.3 Phạm vi yêu cầu kỹ thuật
Trong quá trình sử dụng, ứng dụng phải đảm bảo các yêu cầu như:
 Giao diện trực quan, thân thiện, giúp người dùng thao tác dễ dàng, nhanh
chóng.
 Tốc độ truy xuất nhanh, linh hoạt.
 An toàn và bảo mật thông tin của dữ liệu.
Trang 2


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
1.4

PHƢƠNG PHÁP NGHIÊN CỨU

1.4.1 Về phƣơng pháp thu thập thông tin
Tìm hiểu quy trình quản lý thông tin hàng hóa thông qua quan sát thực tế và từ
giáo viên hướng dẫn. Dựa trên những thông tin đó, tiến hành phân tích, thiết kế và xây
dựng ứng dụng cho đầy đủ, phù hợp với quy trình hoạt động trong thực tế.
1.4.2 Về lý thuyết
Vận dụng những kiến thức từ những học phần đã học, đặc biệt là môn học phân
tích và thiết kế hệ thống thông tin, Lập trình hướng đối tượng với ngôn ngữ Java để
xây dựng mô hình cơ sở dữ liệu và lập trình.
Đồng thời, tìm hiểu về hệ điều hành Android thông qua sách, tài liệu, thông qua
các diễn đàn về Android.
1.4.3 Về công nghệ
Những công cụ được sử dụng để phát triển ứng dụng trong phạm vi đề tài này
gồm có:
 Công cụ mô hình hóa: Power Designer 15.1
 Công cụ lập trình: Eclipse

 Hệ quản trị cơ sở dữ liệu: SQLite
1.5

Ý NGHĨA THỰC TIỄN CỦA ỨNG DỤNG

Chương trình có thể áp dụng vào công việc hàng ngày khi người bán hàng có
nhu cầu sử dụng đến, ứng dụng rất dễ sử dụng và thân thiện với người dùng.

Trang 3


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
2.1

SƠ LƢỢC QUÁ TRÌNH PHÁT TRIỂN CỦA ANDROID [3]

2.1.1 Giới thiệu về Android
-

Là một hệ thống điều hành, middleware và các ứng dụng di động chủ chốt.

-

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.

2.1.2 Lịch sử phát triển
Cách các nhà sản xuất điện thoại dùng Android họ cho ra một dòng điện thoại,

lấy bản open source của Android về, chỉnh sửa lại cho phù hợp với dòng điện thoại đó,
rồi cài vào và tung ra thị trường. Do đó các bản Android khác nhau được gọi là các
bản Room khác nhau của Android.
Thiết bị chuẩn của Android bao gồm bốn phím chính (cứng hoặc mềm) là
home, back, search và menu (iPhone chỉ có duy nhất phím Home).
-

Phím Home sẽ quay trở về màn hình home

-

Phím back quay lại màn hình trước đó

-

Phím search và menu sẽ tùy từng ứng dụng mà chúng sẽ có action tương
ứng.

Android được xây dựng trên nhân Linux và được phân phối miễn phí. Không
giống như Windows mobile và Apple iPhone, tuy cả hai đều cung cấp môi trường phát
triển ứng dụng phong phú và đơn giản dễ tiếp cận nhưng luôn có sự ưu tiên cho các
ứng dụng mặc định có sẵn của hệ điều hành (native applications). Với Android mọi
ứng dụng đều được viết trên cùng một tập API, thế nên không có sự phân biệt giữa các
ứng dụng mặc định và các ứng dụng của bên thứ ba. Người dùng hoàn toàn có thể thay
thế mọi ứng dụng mặc định bằng các ứng dụng yêu thích của mình, thậm chí ngay cả
màn hình thực hiện cuộc gọi và màn hình chính (home scream).
Sự ra mắt của Android vào ngày 5 tháng 11 năm 2007 gắn với sự thành lập của
liên minh thiết bị cầm tay mã nguồn mở, bao gồm 78 công ty phần cứng, phần mềm và
viễn thông nhằm mục đính tạo nên một chuẩn mở cho điện thoại di động trong tương
lai. Google công bố hầu hết các mã nguồn Android theo bản cấp phép Apache.


Trang 4


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android

Hình 1.1. Các thành viên của liên minh di động mở.
Các ứng dụng có sẵn trên Android
Một điện thoại Android thông thường sẽ đi kèm với một vài ứng dụng có sẵn,
bao gồm:
 Một trình email tương thích với Gmail.
 Chương trình quản lý tin nhắn SMS.
 Chương trình quản lý thông tin cá nhân, bao gồm cả lịch làm việc, danh bạ
và được đồng bộ hóa với dịch vụ Google.
 Phiên bản thu gọn của Google Map cho điện thoại, bao gồm StreetView, tìm
kiếm địa chỉ, chỉ đường, tình trạng giao thông…
 Trình duyệt Web dựa trên nhân Webkit.
 Chương trình tán gẫu (Chat).
 Trình đa phương tiện ( chơi nhạc, xem phim…).
 Android MarketPlace cho phép người dùng tải về và cài đặt các ứng dụng
mới.
Trang 5


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
Tất cả các ứng dụng có sẵn đều được viết bằng ngôn ngữ Java và sử dụng
Android SDK.
Các dữ liệu về thông tin người dùng được các ứng dụng có sẵn sử dụng như
thông tin về danh bạ vẫn hoàn toàn có thể được sử dụng bởi các ứng dụng của bên thứ
ba. Tương tự vậy, ứng dụng của bạn hoàn toàn có thể xử lý các sự kiện như các cuộc

gọi đến, nhận một tin nhắn mới… thay cho các ứng dụng có sẵn.
 Truy cập phần cứng
Android bao gồm các thư viện API giúp đơn giản hóa tối đa việc sử dụng phần
cứng của thiết bị. Điều đó đảm bảo rằng bạn không cần phải bận tâm nhiều đến việc
ứng dụng của mình có thể chạy như mong đợi trên nhiều thiết bị khác nhau hay không,
miễn là thiết bị đó có hỗ trợ Android.
Android SDK bao gồm các API cho phần cứng :GPS, Camera, kết nối mạng,
WIFI, Bluetooth, con quay gia tốc, màn hình cảm ứng, quản lý năng lượng…
 Dịch vụ chạy nền
Android hỗ trợ các ứng dụng và dịch vụ được thiết kế chạy ẩn. Do kích thước
nhỏ của màn hình điện thoại nên tại một thời điểm chỉ có thể thấy một ứng dụng. Dịch
vụ chạy nền giúp tạo ra các thành phần ứng dụng “vô hình” để thực hiện tự động một
tác vụ nào đó mà không cần phải có sự tương tác của người dùng. Ví dụ như một dịch
vụ chạy nền có chức năng chặn cuộc gọi đến đối với các số điện thoại có trong “black
list” chẳng hạn.
 SQLite Database
Bởi vì tính chất nhỏ gọn và bị hạn chế về phần cứng của điện thoại di động, cho
nên đòi hỏi việc lưu trữ và truy xuất dữ liệu phải nhanh chóng và hiệu quả. Android hỗ
trợ hệ quản trị nhỏ gọn SQLite, và cung cấp cho ứng dụng các API để thao tác. Mặc
định mỗi ứng dụng đều được chạy trong SandBox (hộp cát) điều này có nghĩa là nội
dung của từng database ứng với từng ứng dụng chỉ có thể truy cập bằng chính ứng
dụng đó. Tuy nhiên cũng có các cơ chế để các ứng dụng chia sẽ, trao đổi các database
với nhau.
 Hệ thống thông báo
Thông báo là cách thức tiêu chuẩn mà ở đó thiết bị báo cho người dùng đã có
một sự kiện nào đó đã xảy ra. Chẳng hạn như có cuộc gọi tới, máy sắp hết pin… Sử
dụng các API bạn có thể cho ứng dụng của mình thông báo tới người dùng bằng âm
thanh, rung, hoặc thậm chí cả đèn LED của thiết bị.

Trang 6



Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
 Tối ưu hóa bộ nhớ và quản lý tiến trình
Việc quản lý bộ nhớ và tiến trình trong Android cũng có một chút khác biệt
giống như công nghệ Java và .NET, Android sử dụng một bộ Run-time của riêng mình
với công nghệ ảo hóa để quản lý bộ nhớ của các ứng dụng đang chạy. Không giống
như những nền tảng khác, Android Run-time cũng đồng thời quản lý luôn cả thời gian
sống của ứng dụng. Android đảm bảo các ứng dụng đều được đáp ứng bằng cách dừng
và hủy các tiến trình không cần thiết để giải phóng các tài nguyên cho các tiến trình có
độ ưu tiên cao hơn.
Trong bối cảnh đó, độ ưu tiên được xác định tùy thuộc vào ứng dụng mà người
dùng đang tương tác. Android đảm bảo rằng các ứng dụng được hủy một cách nhanh
chóng, đồng thời cũng khởi động là nhanh cũng không kém nếu cần. Điều này thật sự
quan trọng trong một môi trường mà ở đó bản thân ứng dụng không thể tự kiểm soát
được thời gian sống cho mình.
Android software development kit (SDK)
Bộ SDK của Android bao gồm mọi thứ cần thiết giúp bạn có thể lập trình,
debug, test ứng dụng Android.
Android API: Cốt lõi của bộ SDK là thư viện các hàm API và Google cũng chỉ sử
dụng bộ API này để xây dựng các ứng dụng có sẵn cho Android.
Development tool: SDK bao gồm rất nhiều công cụ để giúp biên dịch, sửa lỗi và hỗ
trợ trong việc lập trình ứng dụng.
Android Emulator: Trình giả lập thiết bị chạy Android thực sự với nhiều Skin thay
thế, cực kì tiện lợi cho việc test ứng dụng Android ngay trên máy tính mà không cần
phải thông qua một thiết bị chạy Android thực.
Tài liệu: SDK bao gồm một bộ tài liệu rất chi tiết, giải thích cặn kẽ chính xác những gì
bao gồm trong mỗi page, class cùng với cách sử dụng chúng. Ngoài tài liệu về “code”,
còn có những tài liệu dùng để “getting started” và giải thích các nguyên tắc và cơ chế
hoạt động của ứng dụng trong Android.

Code mẫu: SDK bao gồm các ứng dụng mẫu đơn giản minh họa cho các tính năng nổi
bật trên Android, cũng như các ứng dụng demo cách sử dụng các tính năng của bộ
API.
Kiến trúc ứng dụng
Ý tưởng của Android là việc khuyến khích tái sử dụng lại các thành phần đã có,
cho phép ứng dụng của bạn có thể chia sẻ Activity, Service, Dữ liệu với các ứng dụng
khác nhau trong giới hạn bạn đặt ra.
Sau đây là kiến trúc của mọi ứng dụng Android:
Trang 7


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
-

Activity Manager : Kiểm soát vòng đời của Activity.

-

View : Xây dựng giao diện người dùng cho Activity.

-

Notification Manager: Cung cấp một cơ chế thống nhất và an toàn để ứng
dụng có thể đưa ra các thông báo cho người dùng.

-

Content Provider: Giúp trao đổi và chia sẽ dữ liệu giữa các ứng dụng với
nhau.


-

Resource Manager: Hỗ trợ quản lý các tài nguyên không là code như các
chuỗi, hình ảnh, và âm thanh…

Các thư viện của Android
Android cung cấp các gói API để phát triển ứng dụng. Sau đây là các API mà
tất cả các thiết bị Android đều tối thiểu phải hỗ trợ để giúp cho chúng ta một cái nhìn
tổng quát về thư viện này.
 Android.util : Gói API lõi, chứa các class cấp thấp như container, string
formatter, XML parsing.
 Android.os : Truy cập tới chức năng của hệ điều hành như : gởi nhận tin
nhắn, giao tiếp nội bộ giữa các ứng dụng, thời gian…
 Android.graphics: Cung cấp các lớp liên quan tới xử lý đồ họa ở mức thấp.
Hỗ trợ các hàm cơ bản như vẽ điểm, vẽ miền, tô màu.. trên khung canvas.
 Android.text: Cung cấp các hàm phân tích và xử lý chuỗi.
 Android.database: Cung cấp các lớp cấp thấp cần thiết để làm việc với
database.
 Android.content: Dùng để quản lý các tài nguyên, các nội dung và các gói.
 Android.view: Views là lớp cha của mọi lớp giao diện người dùng.
 Android.widget: Được thừa kế từ lớp View, bao gồm các lớp cơ bản để xây
dựng giao diện widget như: list, button, layout..
 Android.map: Gói API cấp cao, dùng để truy cập tới các chức năng của
GoogleMap.
 Android.app: Gói API cấp cao, bao gồm các Activity và Service – hai lớp cơ
sở cho mọi ứng dụng Android.
 Android.telephony: Cung cấp cho bạn khả năng tương tác trực tiếp với các
chức năng cơ bản của một điện thoại như nghe, gọi, tin nhắn.
Trang 8



Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
 Android.webkit: cung cấp một webView control trên nền webkit để có thể
nhúng ứng dụng, cùng với các API điều khiển cơ bản như stop, refresh,
cookieManager….
2.2

ANDROID RUNTIME [3]

Dalvik là máy ảo giúp các ứng dụng java chạy được trên các thiết bị di động Android.
Nó chạy các ứng dụng đã được chuyển đổi thành một file thực thi Dalvik (dex). Định
dạng phù hợp cho các hệ thống mà thường bị hạn chế về bộ nhớ và tốc độ xử lý.
Dalvik trông giống như máy ảo Java (Java Virtual Machine) nhưng thực tế thì hoàn
toàn khác dưới gốc nhìn của nhà phát triển. Khi nhà phát triển viết một ứng dụng dành
cho Android, anh ta thực hiện các đoạn mã trong môi trường Java. Sau đó, nó sẽ được
biên dịch sang các bytecode của Java, tuy nhiên để thực thi được ứng dụng này trên
Android thì nhà phát triển phải thực thi một công cụ có tên là dex. Đây là công cụ
dùng để chuyển đổi bytecode sang một dạng gọi là dex bytecode. "Dex" là từ viết tắt
của "Dalvik executable" đóng vai trò như cơ chế ảo thực thi các ứng dụng Android.
2.3

KIẾN TRÚC CỦA ANDROID [3]

Mô hình sau thể hiện một cách tổng quát các thành phần của hệ điều hành
Android. Mỗi một phần sẽ được đặc tả một cách chi tiết dưới đây.

Hình 2.1: Cấu trúc hệ thống Android.
Trang 9



Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
2.3.1 Linux kernel
Hệ điều hành Android được phát triển dựa trên hạt nhân Linux. Lớp này chứa
tất cả các thiết bị mức thấp điều khiển các thành phần phần cứng khác nhau của một
thiết bị Android bao gồm quản lý bộ nhớ (memory managerment), giao diện với phần
cứng (driver medel), thực hiện bảo mật (security), quản lý tiến trình (process).

Hình 2.2: Cấu trúc Linux kernel
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ầu kết nối mạng
không dây,…
Các thành phần của nhân Linux:
-

Display Driver: Điều khiển việc hiển thị lên màn hình cũng như 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 khiể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 sóng wifi.

-

Audio Driver: Điều khiển các bộ thu phát âm thanh, giải mã tín hiệu dạng audio
thành tín hiệu số và ngược lại.

-

Power Madagement: Giám sát việc tiêu thụ điện năng.

-

M-System Driver: Quản lý việc đọc ghi lên các thiết bị nhớ như SD, flash.

Trang 10


Xây dựng ứng dụng quản lý hàng hóa trên thiết bị di động Android
-

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 để đảm bào những chức năng truyền thông được thực

hiện.

2.3.2 Library và Android Runtime
Phần này có 2 thành phần là Library và Android runtime

Hình 2.3: Cấu trúc Library và Android runtime
2.3.2.1 Library
Thành phần này có nhiều thư viện được viết bằng C/C++ để các phần mềm có
thể sử dụng, các thư viện đó được tập hợp thành một số nhóm như:
-

Thư viện hệ thống (System C library): Thư viện dựa trên chuẩn C, được sử
dụng chỉ bởi hệ điều hành.

-

Thư viện Media (Media Libraries): Có nhiều codec để hỗ trợ việc phát và
ghi các loại định dạng âm thanh, hình ảnh, video thông dụng.

-

Thư viện web (LibWebCore): Đây là thành phần để xem nội dung trên web,
được sử dụng để xây dựng phần mềm duyệt web (Android Browse) cũng
như để các ứng dụng khác có thể nhúng vào. Nó cực kỳ mạnh, hỗ trợ được
nhiều công nghệ mạnh mẽ như HTML5, javaScript, CSS, DOM, AJAX,….

-

Suface Manage: Quản lý hiển thị 2D và 3D.


-

SGL công nghệ 2D.

-

SQLite: Quản lý database của ứng dụng.

-

Free Type; Dùng cho hiển thị ảnh, font.

-

SSL (Secure Socket Layer) : Tầng thiết lập giao dịch an toàn trên 2 ứng
dụng trên 1 cổng (socket).

-

Open GL/EL: Hỗ trợ thư viện tùy chọn 3D tĩnh và động.
Trang 11


×