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

XÂY DỰNG hệ THỐNG QUẢNG cáo NHÀ đất

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.05 MB, 114 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG

KHÓA LUẬN TỐT NGHIỆP

XÂY DỰNG HỆ THỐNG QUẢNG CÁO NHÀ ĐẤT

Giảng viên hướng dẫn:
Sinh viên thực hiện:
Lớp:
Khóa:

TS. ĐÀM QUANG HỒNG HẢI
NGUYỄN LÂM
08520194
NGÔ TẤN TÀI
08520323
MMT03
2008-2013

TP. Hồ Chí Minh, tháng 02 năm 2013


LỜI MỞ ĐẦU
Bất động sản là một trong những lĩnh vực “xương sống” của nền kinh tế, nếu
bất động sản gặp khó khăn thì sẽ kéo theo không ít những khó khăn trong các vấn đề
xã hội và làm ảnh hưởng đến kinh tế vĩ mô của đất nước. Chính vì thế, các doanh
nghiệp đã đẩy mạnh đầu tư các dự án bất động sản nhầm đáp ứng nhu cầu cho người
dân, mang lại lợi ích cho doanh nghiệp, đẩy mạnh phát triển cơ sở hạ tầng và nền kinh


tế quốc dân. Tuy nhiên thực tế cho thấy những năm gần đây là những năm tháng đầy
khó khăn đối với thị trường bất động sản, các nhà đầu tư bất động sản mới chỉ quan
tâm đến thị trường dành cho những người có thu nhập cao, những người có khả năng
kinh tế, vì thế sản phẩm là các căn hộ cao cấp, chung cư cao cấp, các nhà biệt thự liền
kề... ngày càng nhiều. Trong khi đó phần lớn những người dân cần đến những sản
phẩm với quy mô vừa và nhỏ, giá cả khiêm tốn thì lại không có, vì vậy những sản
phẩm với giá cao, quy mô lớn thì trong tình trạng thừa thải. Thực tế nhu cầu nhà ở cho
những người có thu nhập thấp là nhiều nhưng vẫn không thể đáp ứng được nhu cầu
của phần lớn những người dân có thu nhập thấp như hiện nay.1
Với những khó khăn kể trên, để giảm thiểu tình trạng bất động sản “đóng
băng”, các doanh nghiệp đã đẩy mạnh quảng cáo và áp dụng các chính sách ưu đãi
nhằm đáp ứng nhu cầu cho người dân. Ngoài việc đăng các tin quảng cáo trên báo đài
với chi phí tương đối cao, phần lớn các doanh nghiệp đều quan tâm đến việc đăng tin
quảng cáo trên các Website chuyên về quảng cáo nhà đất. Chính vì vậy, trong những
năm gần đây, các Website về quảng cáo bất động sản ngày càng nhiều để đáp ứng nhu
cầu cho doanh nghiệp và những người rao bán, nổi bật như: rongbay.com,
muabannhadat.com.vn, batdongsan.com.vn, sanhadat.net, nhaban.com...
Bên cạnh những vấn đề về bất động sản, trong những năm gần đây chúng ta
chứng kiến những bước phát triển vượt bậc của công nghệ thông tin, đặc biệt là về
lĩnh vực di động. Ngày nay ngoài chức năng chính là liên lạc, những chiếc điện thoại
thông minh đã ra đời và đáp ứng được nhiều tính năng nổi bật, mang lại hiệu quả sử
1 Theo />
655476.htm
GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


dụng cao và đáp ứng các nhu cầu tối đa cho con người. Với việc tích hợp vào chiếc
điện thoại di động các công nghệ tiên tiến như 3G, Wifi giúp mọi người có thể sử

dụng Internet một cách tiện lợi mọi lúc mọi nơi. Bên cạnh đó, việc kết hợp chiếc điện
thoại thông minh với các dịch vụ được cung cấp bởi các đại gia trong ngành công
nghệ thông tin như Google với hệ điều hành Android và Apple với hệ điều hành iOS
đã mang lại hiệu quả và lợi ích tối đa cho người sử dụng. Tuy Android là hệ điều hành
được phát triển sau iOS nhưng với ưu thế là hệ điều hành mã nguồn mở và yêu cầu về
phần cứng của thiết bị có thể chạy nó là tương đối thấp nên tốc độ phát triển của nền
tảng di động này là khá cao và là sự lựa chọn hợp lý cho các nhà phát triển phần mềm
trên thế giới.
Từ việc nhìn nhận về thực tế của xã hội, nhóm đã quyết định xây dựng ứng
dụng về quảng cáo nhà đất với tên đề tài “xây dựng hệ thống quảng cáo nhà đất” và
tên ứng dụng là “9House”. Trong đề tài này, nhóm đã xây dựng một hệ thống gồm
một Website quảng cáo tin tức nhà đất viết bằng ngôn ngữ lập trình PHP và một ứng
dụng hỗ trợ xem tin tức nhà đất trên nền tảng Android nhằm đáp ứng nhu cầu di động
và cung cấp các tính năng mang lại hiệu quả cao cho người sử dụng.
Kết cấu của đề tài gồm 5 phần:
Chương 1: Tổng quan đề tài giới thiệu tên đề tài, lý do chọn đề tài, những
mục đích mà đề tài muốn hướng tới cho người dùng, đối tượng và phạm vi nghiên cứu
của đề tài.
Chương 2: Giới thiệu về Android và các công nghệ triển khai trình bày lý
thuyết về hệ điều hành Android và các công nghệ được sử dụng để xây dựng hệ thống.
Chương 3: Phân tích thiết kế cơ sở dữ liệu hệ thống quảng cáo nhà đất
phân tích thiết kế cơ sở dữ liệu hệ thống quảng cáo nhà đất.
Chương 4: Ứng dụng quảng cáo nhà đất 9House trình bày thiết kế giao diện
và các chức năng của ứng dụng trên thiết bị Android và trên Website.
Chương 5: Kết luận nêu ra những kết quả đã đạt được, những hạn chế,
phương pháp để khắc phục và phát triển trong tương lai.
GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài



LỜI CẢM ƠN
Đầu tiên chúng em xin chân thành cảm ơn các Thầy, Cô của trường Đại học
Công nghệ thông tin – Đại học Quốc gia TP.Hồ Chí Minh, đặc biệt là các Thầy, Cô
giáo Khoa Mạng Máy Tính và Truyền Thông đã tận tình giảng dạy, dìu dắt chúng em
trong suốt thời gian chúng em học tại trường.
Chúng em xin chân thành cảm ơn Thầy Đàm Quang Hồng Hải đã tận tình
hướng dẫn, chỉ bảo chúng em trong suốt thời gian thực hiện đề tài. Trong quá trình
làm việc với Thầy, chúng em không những học hỏi được nhiều kiến thức bổ ích mà
còn học được tinh thần làm việc, kinh nghiệm nghiên cứu khoa học của Thầy.
Chúng em xin bày tỏ lòng biết ơn sâu sắc đến gia đình, cha mẹ và bạn bè đã
luôn ủng hộ và là nguồn động viên to lớn, giúp đỡ chúng em vượt qua những khó
khăn trong suốt quá trình học tập, nghiên cứu.
Mặc dù chúng em đã cố gắng hoàn thiện luận văn với tất cả sự nỗ lực của bản
thân, nhưng chắc chắn không thể tránh khỏi những thiếu sót. Kính mong quý Thầy Cô
tận tình chỉ bảo.
Một lần nữa, chúng em xin chân thành cảm ơn và luôn mong nhận được sự
đóng góp quý báu của quý Thầy Cô.

TP.HCM, ngày 27 tháng 2 năm 2013
Nguyễn Lâm
Ngô Tấn Tài

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


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

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

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN

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

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài



MỤC LỤC

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


DANH SÁCH CÁC HÌNH

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


DANH MỤC CÁC BẢNG

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


10

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1

Tên đề tài
Tên đề tài: Xây dựng hệ thống quảng cáo nhà đất.
Tên ứng dụng: 9House.


1.2

Lý do chọn đề tài
Trong những năm qua, mặt bằng giá đất tăng nhanh đã thu hút giới đầu tư khắp

nơi đổ vốn vào để kiếm lời. Cái giá của sự phát triển quá nhanh và chênh lệch của thị
trường là những dãy phố, khu chung cư cao tầng bị bỏ hoang. Nếu như cách đây
khoảng 5 năm, giá đất ở trong các khu đô thị chỉ hơn chục triệu đồng mỗi mét vuông,
thì hiện nay mặc dù đã giảm, nhưng trung bình vẫn ở mức vài chục triệu đồng tới hơn
trăm triệu đồng mỗi mét vuông. Chính điều này đã làm cho giá nhà ở trung bình cao
hơn 25 lần so với thu nhập trung bình một năm của người lao động, lớn hơn gấp 5 lần
so với các nước phát triển và gấp 10 lần so với các nước chậm phát triển. Trong khi
đó, theo đánh giá của các chuyên gia liên ngành về thị trường bất động sản, nhu cầu
về nhà ở vẫn đứng ở mức cao, đặc biệt là nhà ở xã hội, nhà ở giá thấp ở khu đô thị,
nhà ở cho công nhân khu công nghiệp, nhà trọ cho học sinh, sinh viên và nhà ở cho
người nghèo khu vực nông thôn. Theo báo cáo của bộ xây dựng, đến năm 2015, dân
số Việt Nam khoảng 91,5 triệu người và nhu cầu về nhà ở là 1.966,6 triệu mét vuông.
Nhu cầu về vốn đầu tư cho nhà ở năm 2015 là 2.205.000 tỷ đồng và đến 2020 cần
1.767.000 tỷ đồng. Nhu cầu về nhà ở ngày càng cao nhưng thị trường nhà ở cho thuê
chưa phát triển tương xứng.2
Với những khó khăn hiện nay của ngành bất động sản, để giảm thiểu việc bất
động sản “đóng băng”, ngoài các chính sách đầu tư, phát triển và hỗ trợ của nhà nước,
doanh nghiệp cần phải đưa ra các chính sách quảng cáo, ưu đãi để có thể bán được các
sản phẩm của mình. Thay vì phải đăng tin quảng cáo trên các phương tiện truyền
2 Trích />GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


11


thông với chi phí cao hoặc thông qua các trung tâm mua bán nhà đất, các thương lái,
sẽ dễ dàng hơn để đăng tin chỉ với vài bước đơn giản trên các Website quảng cáo nhà
đất.

Hình 1.1 Hình ảnh “đóng băng” của bất động sản
Bên cạnh đó, theo xu hướng phát triển của công nghệ thông tin và truyền thông
cùng với sự phát triển mạnh mẽ của các phần mềm ứng dụng, các phương tiện truyền
thông sử dụng công nghệ cao ra đời làm cho thế giới được kết nối với nhau thành một
thể thống nhất. Ngày nay những chiếc điện thoại không còn mang tính năng liên lạc
đơn giản mà nó được tích hợp các ứng dụng cần thiết và hữu ích cho người dùng. Với
sự ra đời của các smartphone, tablet kèm theo những công nghệ tiên tiến đã đưa toàn
bộ thông tin trong cuộc sống nằm trong lòng bàn tay.
Cùng với sự đa dạng về các sản phẩm và các nhà sản xuất phần cứng, thị
trường hệ điều hành dành cho các smartphone cũng cạnh tranh đầy sôi nổi bằng cách
không ngừng nâng cấp các phiên bản của các nhà sản xuất. Hiện nay, các nhà sản xuất
hệ điều hành dành cho smartphone nổi bật như Google, Apple, Microsoft, BlackBerry,
Nokia với các dòng sản phẩm như Android, iOS, Windows Mobile, RIM và Symbian.

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


12

Hình 1.2 Thị trường hệ điều hành di động
Mặc dù sinh sau đẻ muộn nhưng Android đang có những bước tiến thần tốc.
Gần đây, trong sự kiện ra mắt iPhone 5 vào tháng 9 năm 2012 tại San Francisco,
Apple đã công bố kho ứng dụng App Store của mình đã đạt tới con số 70.000 ứng

dụng. Và ít có ai nghỉ rằng kho ứng dụng Google Play Store dành cho nền tản Android
lại có thể đuổi kịp được App Store về số lượng ứng dụng dù rằng ra đời sau. Nhưng
vừa qua, lượng ứng dụng trên nền tản di động Android đã đạt tới con số 70.000 ứng
dụng.3 Có thể nói Google Play Store đã đạt được nhựng bước tăng trưởng thần kỳ về
số lượng ứng dụng. Các lập trình viên, các nhà sản xuất điện thoại luôn ưu tiên sử
dụng Android vì đây là một hệ điều hành mã nguồn mở được Google phát triển dựa
trên nền tản Linux kèm theo sự linh hoạt từ nền tảng Google, phù hợp với các
smartphone tầm thấp lẫn tầm cao. Hàng loạt các ông lớn sản xuất điện thoại di động
và máy tính bảng sử dụng hệ điều hành Android như HTC, Samsung, LG, Motorola,
Sony Ericsson... Các nhà lập trình ứng dụng cho Android ngày càng nhiều, kho ứng
dụng Android market ngày càng lớn mạnh và đủ sức cạnh tranh với AppStore của
Apple. Chính vì những điều trên, Android được hứa hẹn sẽ là hệ điều hành thống trị
trong tương lai.
3 Theo />
2012110108023557.chn
GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


13

Vấn đề đặt ra, các Website rao vặt nhà đất ngày càng nhiều với các mức thu phí
đăng tin khác nhau mang lại nhiều sự lựa chọn cho người dùng, để nhận được nhiều
sự quan tâm sử dụng của khách hàng, cần phải có một hệ thống quảng cáo tin tức nhà
đất một cách hiệu quả, nhanh chóng, tiện lợi, rộng rãi hơn. Vì thế, nhóm đã tận dụng
một cách tối đa những lợi ích mà chiếc điện thoại thông minh mang lại bằng cách xây
dựng một ứng dụng hỗ trợ quảng cáo nhà đất trên điện thoại di động sử dụng hệ điều
hành Android.
1.3


Mục tiêu đề tài
Hệ thống hướng đến việc mang lại lợi ích cho cả ba bên bao gồm người rao

bán, người mua lẫn người quản lý hệ thống. Người rao bán có thể sử dụng hệ thống để
đăng tin rao vặt nhà đất với chỉ vài thao tác đơn giản và chỉ mất vài nghìn đồng SMS

4

để một tin nhà đất được hiển thị trên Website 9House. Người mua có thể sử dụng các
chức năng của ứng dụng trên thiết bị Android như bản đồ Google để biết rõ vị trí địa
lý các căn nhà và sử dụng công nghệ định vị kết hợp với tính năng chỉ đường để dễ
dàng tìm kiếm vị trí căn nhà yêu thích. Người quản lý hệ thống có thể thu lợi nhuận
thông qua tổng đài SMS. Bên cạnh đó hệ thống còn mang lại nhiều tính năng hữu ích
đặc biệt là việc trao đổi dễ dàng giữa người bán và người mua thông qua hệ thống
bình luận tin tức trên ứng dụng Android.
1.4

Đối tượng và phạm vi nghiên cứu
Đối tượng:
 Sử dụng cho các loại smart phone sử dụng hệ điều hành Android có hỗ

trợ công nghệ định vị toàn cầu GPS 5.
 Tất cả các doanh nghiệp kinh doanh bất động sản, những người sinh

sống trong nước muốn rao bán, quảng cáo nhà đất, tìm kiếm cho mình
sản phẩm nhà đất thích hợp.
4 SMS, />
5 GPS, />GVHD: TS Đàm Quang Hồng Hải


SVTH: Nguyễn Lâm – Ngô Tấn Tài


14

Phạm vi nghiên cứu:
 Nghiên cứu về lĩnh quảng cáo, rao vặt nhà đất.
 Nghiên cứu về các loại nhà đất, các thông tin cần thiết để rao bán nhà

đất.
 Nghiên cứu về cách thức tích hợp dịch vụ tổng đài SMS để mang lại lợi

nhuận cho người quản lý.
 Nghiên cứu về phát triển ứng dụng trên nền tảng Android và công nghệ

của Google (Google Maps).

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


15

CHƯƠNG 2: GIỚI THIỆU VỀ ANDROID VÀ CÁC CÔNG NGHỆ TRIỂN
KHAI
2.1

Tổng quan về hệ điều hành Android


2.1.1 Lịch sử của Android
Android là một hệ điều hành mã nguồn mở dành cho điện thoại di động được
phát triển bởi Google, dựa trên nền tảng Linux. Đầu tiên được ra đời bởi công ty
Android Inc, đến năm 2005 Google đã mua lại và xây dựng Android Platform. Những
nhà đồng sáng lập 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 TMobile) 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 các thông
tin về việc phát triển Android của Google, ngoài việc họ đang phát triển phần mềm
cho điện thoại di động. Điều này đã chứng minh cho thế giới biết rằng Google đang có
ý định tham gia vào thị trường di động. 6
Ngày 5 tháng 9 năm 2007, Liên minh thiết bị cầm tay mã nguồn mở (Open
Handset Alliance), bao gồm nhiều công ty trong đó có Texas Instruments, Tập đoàn
Broadcom, Google, HTC, Intel, LG, Tập đoàn Marvell Technology, Motorola, Nvidia,
Qualcomm, Samsung Electronics, Sprint Nextel và T-Mobile. Liên minh được thành
lập với mục đích phát triển các tiêu chuẩn mã nguồn mở cho thiết bị di động. Và cũng
trong ngày này liên minh đã cho ra mắt nền tảng Android được xây dựng trên nhân
Linux phiên bản 2.6.
Ngày 22 tháng 10 năm 2008, chiếc điện thoại sử dụng hệ điều hành Android
chính thức ra đời do hãng HTC thiết kế với tên gọi HTC Dream dùng phiên bản
Android 1.0 được nhà mạng T-Mobile giới thiệu với tên gọi T-Mobile G1.

6 Theo />GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


16

Trung tâm nghiên cứu và tư vấn công nghệ Gartner 7 của Mỹ đã đưa ra dự đoán

của mình về thị trường smartphone toàn cầu đến năm 2015. Theo đó, Android sẽ tiếp
tục tăng trưởng mạnh trong vòng những năm tới để trở thành nền tảng có thị phần lớn
nhất.

Hình 2.1 Thống kê thị trường các hệ điều hành của Gartner 8
Với tầm nhìn chiến lược tới năm 2015, Gartner dự đoán Android sẽ là hệ điều
hành có thị phần đứng đầu với gần 49%, trong khi đó iOS sẽ đứng thứ ba kém
Windows Phone 2.3%.

7 About Gartner, />8 Theo />GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


17

2.1.2 Các phiên bản Android
Các phiên bản của Android được mô tả chi tiết dưới hình sau:

Hình 2.2 Các phiên bản của Android
2.1.3 Kiến trúc hệ điều hành Android
Hệ điều hành Android được thiết kế theo 4 tầng: Application, Application
Framwork, Library và Linux Kernel. Kiến trúc của hệ điều hành Android được thể
hiện tổng quát dưới hình sau: [2]

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài



18

Hình 2.3 Kiến trúc của hệ điều hành Android
2.1.3.1 Tầng Application
Những ứng dụng mà người dùng cuối sử dụng trên thiết bị di động do các nhà
phát triển phần mềm lập trình nên. Một số ứng dụng mà Android tích hợp sẵn như:
danh bạ, lịch, ứng dụng chụp hình quay phim, tin nhắn, chương trình nghe nhạc, xem
phim...
2.1.3.2 Tầng Application Framework
Tầng này cung cấp các API 9 giúp các lập trình viên có thể sử dụng các thiết bị
phần cứng, các dịch vụ chạy nền, thiết lập các cảnh báo cho người dùng và nhiều chức
năng khác.
Một ứng dụng Android bao gồm một bộ các dịch vụ và hệ thống sau:
 View: giúp lập trình viên xây dựng giao diện cho ứng dụng như: Lists,

Grids, Button, Web browser...
 Content Provider: giúp truy xuất dữ liệu từ ứng dụng khác (ví dụ như

Contacts) hoặc quản lý dữ liệu của ứng dụng.
 Resource Manager: hỗ trợ việc truy xuất đến các tài nguyên như: layout,

graphic, locallized String...
 Notification Manager: hiển thị các thông báo, cảnh báo cho người dùng.
 Activity Manager: kiểm soát vòng đời “lifecycle” của ứng dụng và điều

hướng các activity.
2.1.3.3 Tầng Library
Android bao gồm một tập hợp các thư viện C/C++ được sử dụng bởi nhiều
thành phần khác nhau trong hệ thống Android, các thư viện đó được tập hợp thành
một số nhóm như:

9 API, />GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


19
 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): mở rộng từ PacketVideo’s

OpenCORE, hỗ trợ các thư viện phát và ghi các định dạng âm thanh phổ
biến, các định dạng video và ảnh tỉnh, bao gồm MPEG4, H.264, MP3,
AAC, AMR, JPG và PNG.
 Thư viện Web (LibWebCore): dùng Webkit Engine để nhúng vào các

ứng dụng khác, nó có thể hỗ trợ đa định dạng như HTML5, JavaScript,
CSS, DOM, AJAX...
 Thư viện SQLite: Quản lý cơ sở dữ liệu của ứng dụng

2.1.3.4 Tầng Android Runtime
Android bao gồm một tập hợp các thư viện cơ bản, cung cấp hầu hết các chức
năng sẵn có trong các thư viện lõi của ngôn ngữ lập trình Java (Java Core). Tất cả ứng
dụng đều chạy trong tiến trình riêng. Máy ảo Java (Dalvik Virtual Machine) đã được
phát triển để cho một thiết bị có thể chạy nhiều máy ảo một cách hiệu quả.
Được viết từ ngôn ngữ Java, tuy nhiên các ứng dụng Android không chạy bằng
JRE (Java Runtime Environment) của Oracle mà chạy bằng máy ảo Dalvik do Google
phát triển.
2.1.3.5 Tầng Linux Kernel
Android phát triển dựa trên Linux phiên bản 2.6, cung cấp các dịch vụ cố lõi

của hệ thống như bảo mật, quản lý bộ nhớ, quản lý tiến trình. Nhân Linux hoạt động
như một lớp trừu tượng hóa nhằm liên lạc giữa phần cứng và phần còn lại của phần
mềm.

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


20

2.1.3.6 Máy Ảo Dalvik
Dalvik được thiết kế bởi Dan Bornstein, là máy ảo giúp các ứng dụng Java
chạy được trên các thết bị di động sử dụng hệ điều hành Android. Nó chạy các ứng
dụng đã chuyển đổi thành một file thực thi Davik.
Dalvik hoàn toàn khác với máy ảo Java (Java Virtual Machine), khi nhà phát
triển viết ứng dụng Android thì sử dụng ngôn ngữ Java, sau đó được biên dịch sang
bytecode của Java. Tuy nhiên, để ứng dụng có thể chạy trên môi trường Android thì
nhà phát triển phải thực thi một công cụ có tên là dx. Đây là công cụ dùng để chuyên
đổi định dạng bytecode sang Dex-bytecode (Dex là từ viết tắt của Dalvik excutable
đóng vai trò thực thi các ứng dụng Android). [7]
2.1.4 Giới thiệu Android SDK
2.1.4.1 Android SDK
Android SDK (Android Software Development Kit) là bộ công cụ dùng để phát
triển ứng dụng cho hệ điều hành Android. Android SDK do Google xây dựng và phát
hành miễn phí để các nhà phát triển phần mềmm dễ dàng xây dựng và phát triển các
ứng dụng trên hệ điều hành Android.
Android SDK có các đặc tính sau:
 Được phát triển và cung cấp miễn phí.
 Truy cập đến phần cứng Wi-Fi.

 GSM 10, EDGE và tính năng mạng 3G cho phép việc chuyển dữ liệu, gọi

điện thoại hay gửi tin nhắn trong mạng di động.
 API cung cấp các dịch vụ nền tảng như GPS, Google Maps,...
 Truy cập đến các phần cứng đa phương tiện như chơi nhạc, ghi âm,

camera...
10 GMS, />GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


21
 Chia sẻ dữ liệu trong kho dữ liệu.
 Tích hợp trình duyệt dựa trên bộ WebKit (mã nguồn mở).
 P2P hỗ trợ sử dụng Google Talk.
 OpenGL ES hỗ trợ đồ họa 3D. [7]

2.1.4.2 Các gói Java cần thiết
 Java.lang : chứa các lớp lõi của Java.
 Java.io : xuất nhập
 Java.net : kết nối mạng
 Java.util : chứa các lớp tiện ích ví dụ như Log.
 Java.text : tiện ích xử lý văn bản.
 Java.math : các lớp tính toán.
 Javax.net : các lớp mạng.
 Javax.security : các lớp liên quan đến bảo mật.
 Javax.mxl : các lớp liên quan đến DOM-based XML.
 Org.apache.* : các lớp liên quan đến HTTP.
 Org.xml : các lớp liên quan đến SAX-based XML. [1]


2.1.4.3 Các gói dùng cho lập trình Android
 Android.app: truy cập vào các ứng dụng Android.
 Android.content: truy xuất dữ liệu trong Android.
 Android.net: bao gồm các lớp Uri

11

(Uniform Resource Indentifier)

dùng cho việc truy xuất các nội dung khác.
11 Uri, />GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


22
 Android.graphics: hỗ trợ đồ họa.
 Android.opengl: các lớp OpenGL.
 Android.os: truy cập ở mức độ đến môi trường Android.
 Android.os: truy cập mức độ hệ thống đến môi trường Android.








android.provider: các lớp liên quan đến ContentProvider.

android.telephony: khả năng truy cập Telephony.
android.text: giao diện văn bản.
android.util: tập các tiện ích thao tác trên văn bản,bao gồm XML.
android.view: thành phần UI 12 (giao diện người dùng).
android.webkit: hỗ trợ chức năng trình duyệt Web.
android.widget: thành phần UI mức độ cao hơn. [1]

2.1.5 Các thành phần của một ứng dụng Android
2.1.5.1 Tập tin AndroidManifest.xml
Trong bất ký một ứng dụng Android nào đều có tập tin này, nó được tạo ra mặc
định khi ta tạo một project Android bất kỳ. Tập tin này chứa đựng các thành phần của
ứng dụng như: các permission, các screen mà ứng dụng hỗ trợ, các activity, các
service và quy định activity nào sẽ chạy đầu tiên.

12 UI, />GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


23

Hình 2.4 Giao diện quản lý tập tin Manifest
AndroidManifest.xml có 5 thành phần chính:
 Manifest: Tab này dùng để chỉnh sửa thông tin của ứng dụng như quản

lý package name, version.
 Application: tab này dùng để khai báo chi tiết về ứng dụng như tên,

icon, các phương thức, dịch vụ cung cấp, các activity.
 Permission: tab này dùng để hiển thị các lớp dùng để theo dõi ứng dụng.

 AndroidManifest.xml: dùng để chỉnh sửa tập tin AndroidManifest bằng

code.
Thông thường, một tập tin AndroidManifest.xml gồm có 3 thẻ chính, ngoài ra
còn có nhiều thẻ phụ khác:
 Thẻ Application: chứa các thuộc tính để định nghĩa cho ứng dụng

Android như icon, label, theme, permission, process,...

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


24
 Thẻ Permission: bao gồm các thuộc tính chỉ định quyền truy xuất và sử

dụng tài nguyên của ứng dụng. Trong ứng dụng nếu muốn sử dụng một
loại tài nguyên nào đó thì phải khai báo trong thẻ permission.
 Thẻ Version: dùng để xác định phiên bản của hệ điều hành Android mà

ứng dụng có thể hỗ trợ. [8]
2.1.5.2 Tập tin R.Java
R.java là tập tin tự động sinh ra khi tạo ứng dụng Android, tập tin này được sử
dụng để quản lý các thuộc tính được khai báo trong file XML của ứng dụng.
Mã nguồn của tập tin R.java tự động sinh ra khi có bất kì một sự kiện nào xảy
ra làm thay đổi các thuộc tính trong ứng dụng. chẳng hạn như, khi copy một tập tin
hình ảnh từ ngoài vào trong project thì đường dẫn đến tập tin đó sẽ được hình thành
vào trong tập tin R.java hoặc khi xóa một tập tin hình ảnh nào thì đường dẫn cũng sẽ
được xóa trong. Người lập trình không cần phải thao tác gì trong tập tin này khi lập

trình. [6]
2.1.5.3 Thư mục src
Là nơi chứa đựng toàn bộ các source code của chương trình. ở đây các
class.java bắt buộc phải thuộc một package nào đó trong thư mục src. [8]
2.1.5.4 Thư mục Res
Là thư mục chứa toàn bộ tài nguyên của chương trình như: animations,
drawable graphics, layout files, data-like strings, numbers và raw files. Chú ý, tên của
tài nguyên không được sử dụng các ký tự đặc biệt (có thể sử dụng gạch chân), các ký
tự viết hoa và khoảng trắng. Ngoài ra, thư mục res còn chứa các tập tin layout dùng để
thiết kế giao diện cho ứng dụng Android.
 Res/drawable: chứa các hình ảnh, icon của ứng dụng.
 Res/layout: chứa các thành phần giao diện.
 Res/value: chứa các giá trị như string, style. [8]
GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


25

2.1.6 Chu trình của ứng dụng Android
2.1.6.1 Activity
Activity là một trong bốn thành phần chính của một ứng dụng Android
(Activity, Content provider, Broadcast Receiver, Services). Một activity cung cấp một
giao diện cho người dùng giao tiếp. Một ứng dụng thường bao gồm nhiều activity,
trong đó sẽ có một activity chính dùng để hiển thị khi ứng dụng được chạy. Mỗi
Activity có thể gọi hiển thị activity khác để thực hiện một hành động khác. Mỗi lần
một Activity mới bắt đầu thì các actvity trước đó sẽ ở trạng thái dừng lại và được quản
lý theo cớ chế stack (LIFO – Last In First Out). [3]
2.1.6.2 Activity Stack

Hệ điều hành Android quản lý các activity theo kiểu stack: khi một activity mới
được khởi tạo, nó sẽ được xếp lên đầu của stack và trở thành running activity, các
activity trước đó sẽ bị tạm dừng và chỉ hoạt động khi các activity gọi sau nó được giải
phóng. Tức là, khi một activity mới được gọi thì nó sẽ đưa lên đỉnh của stack và
activty trước đó sẽ bị đẩy xuống dưới và không được hiển thị trong suốt thời gian
activity mới tồn tại. Khi người dùng nhấn phím Back thì activity kế tiếp trong stack
được chuyển lên để hiển thị và activity hiện tại sẽ bị gỡ bỏ.

Hình 2.5 Mô hình activity Stack

GVHD: TS Đàm Quang Hồng Hải

SVTH: Nguyễn Lâm – Ngô Tấn Tài


×