ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trần Hồng Hải
MẠNG XÃ HỘI ĐỊA ĐIỂM TRÊN FACEBOOK
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2010
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trần Hồng Hải
MẠNG XÃ HỘI ĐỊA ĐIỂM TRÊN FACEBOOK
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Cán bộ hướng dẫn: Thạc sỹ Hồ Đắc Phương
HÀ NỘI - 2010
LỜI CẢM ƠN
Trước hết em xin gửi tới thầy Hồ Đắc Phương lời cảm ơn chân thành và sâu sắc đã
trực tiếp hướng dẫn, chỉ bảo tận tình trong suốt quá trình em làm khóa luận tốt nghiệp.
Em xin cảm ơn cô Nguyễn Minh Hằng trong những ngày cuối đã giúp em hoàn
thiện khóa luận.
Em cũng xin chân thành cảm ơn các thầy cô giáo trong Đại học Công Nghệ đã hết
lòng dạy bảo, giúp đỡ em trong những năm học đại học, giúp em có những kiến thức và
kinh nghiệm quý giá trong chuyên môn và cuộc sống. Những hành trang đó là một tài sản
vô giá nâng bước cho em tới được với những thành công trong tương lai.
Cuối cùng, em xin cảm ơn những người thân trong gia đình và bạn bè đã giúp đỡ,
động viên em hoàn thành khóa luận tốt nghiệp của mình.
TÓM TẮT NỘI DUNG KHÓA LUẬN
Khóa luận nghiên cứu và trình bày cách thức tạo ra một mạng xã hội địa điểm. Cũng
giống như mạng xã hội ảo các thành viên trong mạng chia sẻ cho nhau thông tin về cá
nhân, cảm nghĩ hay một vấn đề nào đó thì ở mạng xã hội địa điểm thông tin được chia sẻ
4.2 . Đăng nhập và tham gia vào ứng dụng 30
4.2.1 . Đăng nhập Facebook 30
4.2.2 . Tham gia vào ứng dụng 31
4.3 . Cách sử dụng ứng dụng 32
4.4 . Mở rộng ứng dụng 34
4.4.1 . Mở rộng ứng dụng cho hãng Taxi 34
4.4.2 . Mở rộng ứng dụng cho nhà hàng ăn 38
Chương V: Kết luận 39
5.1 . Khái quát nội dung đề tài 39
5.2 . Các bước thực hiện 39
5.3 . Kết quả đạt được 39
5.4 . Phương hướng phát triển 40
CHƯƠNG I : ĐẶT VẤN ĐỀ
Mình đang ở đâu? Taxi ở đâu gần nhất? ATM rút đâu là tiện đường nhất? …
Những câu hỏi mà chúng ta thường gặp trong cuộc sống. Nó thật sự không khó
nhưng thỉnh thoảng làm cho ta bối rối, làm cho ta xoay quanh câu hỏi “ địa điểm”. Tìm ra
đường ở những khu đô thị nhà mọc san sát, các con đường mới mở, góc phố, ngõ hẽm,
không dễ khi ta không phải dân bản địa. Luôn cầm theo một tấm bản đồ thì thật bất tiện.
Một câu nói “Đường ở cái miệng”, muốn biết mình đi đường nào cho đúng hãy hỏi người
xung quanh. Muốn biết bạn mình đang ở đâu hãy hỏi chính người bạn đó.
Khuyên bạn hãy hỏi những điều tốt hơn như là : “Bạn khỏe chứ !!!” thay vì hỏi về
“địa điểm”. Bởi trong tay chúng ta có công nghệ.
Ngày nay thiết bị định vị toàn cầu GPS đã phổ biến, cung cấp cho chúng ta về vị trí
trên toàn cầu. GPS định vị chính xác từng điểm trên bản đồ, đang đứng yên hay di
chuyển. Cần có liên kết để biết bạn mình ở đâu. Mạng xã hội Facebook giúp chúng ta kết
nối với nhiều người bạn, cung cấp môi trường phát triển ứng dụng. Việc kết hợp giữa
GPS và Facebook để tạo ra một ứng dụng mạng xã hội địa điểm là rất có tiềm năng. Qua
ứng dụng này ta có thể trả lời những câu hỏi về “địa điểm” thường gặp trong cuộc sống.
Ứng dụng mạng xã hội địa điểm cho phép những người dùng trong Facebook có
thể cập nhật vị trí của mình ở thời điểm hiện tại, và theo dõi vị trí hiện tại của bạn bè.
Facebook chính là yếu tố quan trọng trong xây dựng hệ thống. Sau đó khóa luận hướng
dẫn người dùng làm sao để có thể tham gia vào ứng dụng.
Nội dung khóa luận gồm những phần như sau :
+ Chương một là đặt vấn đề. Đưa ra những vấn đề cần được giải quyết, nêu ra
giải pháp để xử lý các vấn đề đó. Nói về sự thiết thực khi tạo ứng dụng mạng
xã hội địa điểm cộng với việc áp dụng vào thực tế, hiệu quả trước mắt và lâu
dài. Cuối chương một là phần giới thiệu khái quát nội dung của khóa luận.
+ Chương hai là các công nghệ liên quan. Chương này viết về các công nghệ
liên quan trong ứng dụng mạng xã hội địa điểm. Đầu chương là định nghĩa cơ
bản về mạng xã hội. Trong đó có các vấn đề như mạng xã hội là gì, lịch sử ra
đời, cấu thành và mục tiêu của mạng xã hội. Sau đó giới thiệu về mạng xã hội
Facebook. Trong đó có lịch sử ra đời, những con số đáng được nhắc đến của
Facebook, nhân tố để Facebook trở nên thành công. Cũng ở chương này khóa
2
luận nêu ra hai công nghệ quan trọng là Google Map và GPS. Phần cuối
chương khóa luận giới thiệu thêm hai ứng dụng có tính chất tương tự như mạng
xã hội địa điểm.
+ Chương ba là kiến trúc hệ thống. Trong chương này khóa luận xây dựng
một mô hình hệ thống. Sau đó đưa ra thành phần của hệ thống rồi phân tích
từng thành phần một. Mỗi thành phần được khóa luận phân tích đầy đủ về cấu
tạo và chức năng riêng.
+ Chương bốn là cài đặt ứng dụng. Cài đặt ứng dụng và cách thức tham gia
vào ứng dụng được khóa luận viết ở chương này. Cốt lõi của chương này là cài
đặt cấu hình cho ứng dụng. Sau đó khóa luận trình bày thêm cách sử dụng ứng
dụng, một số mô hình kinh doanh được áp dụng vào trong ứng dụng.
+ Chương năm là kết luận. Trong chương này có tổng kết khóa luận, các bước
tiến hành, kết quả đạt được và phương hướng phát triển ứng dụng.
3
CHƯƠNG II : CÁC CÔNG NGHỆ LIÊN QUAN
2.1 . Mạng xã hội
hội trực tuyến với nền tảng lập trình "Facebook Platform" cho phép thành viên tạo ra
những công cụ (apps) mới cho cá nhân mình cũng như các thành viên khác dùng.
- Cấu thành:
• Nút (node): Là một thực thể trong mạng. Thực thể này có thể là một cá nhân, một
doanh nghiệp hoặc một tổ chức bất kỳ nào đó
• Liên kết (tie): là mối quan hệ giữa các thực thể đó. Trong mạng có thể có nhiều
kiểu liên kết. Ở dạng đơn giản nhất, mạng xã hội là một đơn đồ thị vô hướng các mối liên
kết phù hợp giữa các nút. Ta có thể biểu diễn mạng liên kết này bằng một biểu đồ mà các
nút được biểu diễn bởi các điểm còn các liên kết được biểu diễn bởi các đoạn thẳng.
- Mục tiêu:
• Tạo ra một hệ thống trên nền Internet cho phép người dùng giao lưu và chia sẻ
thông tin một cách có hiệu quả, vượt ra ngoài những giới hạn về địa lý và thời gian.
• Xây dựng lên một mẫu định danh trực tuyến nhằm phục vụ những yêu cầu công
cộng chung và những giá trị của cộng đồng.
• Nâng cao vai trò của mỗi công dân trong việc tạo lập quan hệ và tự tổ chức xoay
quanh những mối quan tâm chung trong những cộng đồng thúc đẩy sự liên kết các tổ chức
xã hội.
2.1.2 . Facebook
Theo [4] Facebook là một tiện ích có tính xã hội để kết nối mọi người với bạn bè và
những người đang sống, học tập và làm việc xung quanh. Người ta sử dụng Facebook để
giữ liên lạc với bạn bè, tải không giới hạn hình ảnh, đưa các liên kết và video, và để hiểu
thêm về những người họ đã gặp.
5
Hình 2.1 : facebook
- Lịch sử Facebook:
Mark Zuckerberg thành lập Facebook cùng với bạn bè là bạn cùng phòng Dustin
Moskovitz và Chris Hughes khi ông còn là sinh viên tại Đại học Harvard.
Facebook mở đầu là một phiên bản Hot or Not của Đại học Harvard với tên gọi
Facemash. Mark Zuckerberg, khi đang học năm thứ hai tại Harvard, đã dựng nên
Facemash vào ngày 28 tháng 10 năm 2003.
Facebook là 1 sự lựa chọn được yêu thích của người dùng Việt Nam. Trong những
tuần đầu của tháng 7, Việt Nam chính là quốc gia có số lượng thành viên sử dụng
Facebook tăng nhanh nhất thế giới.
Facebook đã có thêm 1 cột mốc mới trong lịch sử của mình: trang web đã đạt hơn 1
tỷ lượt xem video trong tháng 6 vừa qua. 1 tỷ lượt xem video không phải là nhỏ nhưng nó
vẫn không "thấm" vào đâu so với số lượt xem video của YouTube. Trang web chia sẻ
video số 1 thế giới này có tới 1,2 tỷ lượt xem mỗi ngày. Nhưng chắc chắn Facebook
Video sẽ còn tiếp tục phát triển bởi lẽ Facebook đã đi từ con số 0 để trở thành mạng xã
hội lớn nhất hiện nay với tốc độ tăng trưởng kinh khủng chỉ trong 1 năm trở lại đây.
Facebook đã gặp phải một số tranh cãi trong những năm qua. Nó đã bị cấm một thời
gian tại một số quốc gia, trong đó có Syria và Iran. Nó cũng đã bị cấm tại nhiều công sở
để hạn chế nhân viên tốn thời gian sử dụng dịch vụ. Quyền riêng tư cũng là một vấn đề,
và nó bị lạm dụng vài lần. Trang này cũng đang đối mặt với một số vụ kiện từ một số bạn
7
cùng lớp của Zuckerberg, họ nói rằng Facebook đã ăn cắp mã nguồn và các tài sản trí tuệ
khác của họ.
- Những nhân tố đem lại thành công của Facebook:
+ Cung cấp dịch vụ tiện ích trực tuyến để phục vụ các hành vi xã hội trong một cộng
đồng ngoại tuyến. Facebook tạo ra môi trường cho các hoạt động trí tuệ, xoay quanh
mối quan hệ giữa con người; cho phép chia sẻ quan điểm, suy nghĩ, thông tin và tương
tác với nhau.
+ Thời gian đầu, hạn chế đăng ký thành viên (và các hành vi khác) để tạo ra sự thèm
muốn các dịch vụ trực tuyến (tạo làn sóng đăng ký thông qua hình thức marketing
truyền khẩu)
+ Facebook là tổng hợp của một chuỗi các cộng đồng vi mô đã được thâm nhập sâu
+ Xây dựng nhận thức thương hiệu mạnh dựa trên người dùng và quảng cáo, các
sáng lập viên được sự tín nhiệm của các học viên (trong thời gian khởi sự Facebook)
+ Facebook cung cấp một mạng xã hội được tiêu chuẩn hoá và tự điều khiển/linh
hoạt - một cổng dừng chân được cá nhân hoá cao phục vụ kết nối trực tuyến - người sử
dụng có thể lập trình ra trang của riêng họ với các ứng dụng kéo-và-thả liên tục được
- Sự hoạt động của GPS
Các vệ tinh GPS bay vòng quanh Trái Đất hai lần trong một ngày theo một quỹ đạo
rất chính xác và phát tín hiệu có thông tin xuống Trái Đất. Các máy thu GPS nhận thông
tin này và bằng phép tính lượng giác tính được chính xác vị trí của người dùng. Về bản
chất máy thu GPS so sánh thời gian tín hiệu được phát đi từ vệ tinh với thời gian nhận
được chúng. Sai lệch về thời gian cho biết máy thu GPS ở cách vệ tinh bao xa. Rồi với
nhiều quãng cách đo được tới nhiều vệ tinh máy thu có thể tính được vị trí của người
dùng và hiển thị lên bản đồ điện tử của máy.
Máy thu GPS phải khoá được với tín hiệu của ít nhất ba quả vệ tinh để tính ra vị trí
hai chiều (kinh độ và vĩ độ) và để theo dõi được chuyển động. Với bốn hay nhiều hơn số
quả vệ tinh trong tầm nhìn thì máy thu có thể tính được vị trí ba chiều (kinh độ, vĩ độ và
độ cao). Một khi vị trí người dùng đã tính được thì máy thu GPS có thể tính các thông tin
9
khác, như tốc độ, hướng chuyển động, bám sát di chuyển, khoảng hành trình, quãng cách
tới điểm đến, thời gian Mặt Trời mọc, lặn và nhiều thứ khác nữa.
- Độ chính xác của GPS
Các máy thu GPS ngày nay cực kì chính xác, nhờ vào thiết kế nhiều kênh hoạt động
song song của chúng. Các máy thu 12 kênh song song (của Garmin) nhanh chóng khoá
vào các quả vệ tinh khi mới bật lên và chúng duy trì chắc chắn liên hệ này, thậm chí trong
tán lá rậm rạp hoặc thành phố với các toà nhà cao tầng. Tình trạng nhất định của khí
quyển và các nguồn gây sai số khác có thể ảnh hưởng tới độ chính xác của máy thu GPS.
Các máy thu GPS có độ chính xác trung bình trong vòng 15 mét.
Các máy thu mới hơn với khả năng WAAS có thể tăng độ chính xác trung bình tới
dưới 3 mét. Không cần thêm thiết bị hay mất phí để có được lợi điểm của WAAS. Người
dùng cũng có thể có độ chính xác tốt hơn với GPS Vi sai (Differential GPS, DGPS) sửa
lỗi các tín hiệu GPS để có độ chính xác trong khoảng 3 đến 5 mét. Cục Phòng vệ Bờ biển
Mỹ vận hành dịch vụ sửa lỗi này. Hệ thống bao gồm một mạng các đài thu tín hiệu GPS
và phát tín hiệu đã sửa lỗi bằng các máy phát hiệu. Để thu được tín hiệu đã sửa lỗi, người
dùng phải có máy thu tín hiệu vi sai bao gồm cả ăn-ten để dùng với máy thu GPS của họ.
- Hệ thống vệ tinh GPS
cốt lõi để phát hiện ra vị trí.
- Nguồn lỗi của tín hiệu GPS
Những điều có thể làm giảm tín hiệu GPS và vì thế ảnh hưởng tới chính xác bao
gồm:
11
• Giữ chậm của tầng đối lưu và tầng ion - Tín hiệu vệ tinh bị chậm đi khi xuyên
qua tầng khí quyển.
• Tín hiệu đi nhiều đường - Điều này xảy ra khi tín hiệu phản xạ từ nhà hay các
đối tượng khác trước khi tới máy thu.
• Lỗi đồng hồ máy thu - Đồng hồ có trong máy thu không chính xác như đồng hồ
nguyên tử trên các vệ tinh GPS.
• Lỗi quỹ đạo - Cũng được biết như lỗi thiên văn, do vệ tinh thông báo vị trí
không chính xác.
• Số lượng vệ tinh nhìn thấy - Càng nhiều quả vệ tinh được máy thu GPS nhìn
thấy thì càng chính xác. Nhà cao tầng, địa hình, nhiễu loạn điện tử hoặc đôi khi thậm chí
tán lá dầy có thể chặn thu nhận tín hiệu, gây lỗi định vị hoặc không định vị được. Nói
chung máy thu GPS không làm việc trong nhà, dưới nước hoặc dưới đất.
• Hình học che khuất - Điều này liên quan tới vị trí tương đối của các vệ tinh ở
thời điểm bất kì. Phân bố vệ tinh lí tưởng là khi các quả vệ tinh ở vị trí góc rộng với nhau.
Phân bố xấu xảy ra khi các quả vệ tinh ở trên một đường thẳng hoặc cụm thành nhóm.
• Sự giảm có chủ tâm tín hiệu vệ tinh - Là sự làm giảm tín hiệu cố ý do sự áp đặt
của Bộ Quốc phòng Mỹ, nhằm chống lại việc đối thủ quân sự dùng tín hiệu GPS chính
xác cao. Chính phủ Mỹ đã ngừng việc này từ tháng 5 năm 2000, làm tăng đáng kể độ
chính xác của máy thu GPS dân sự. (Tuy nhiên biện pháp này hoàn toàn có thể được sử
dụng lại trong những điều kiện cụ thể để đảm bảo gậy ông không đập lưng ông. Chính
điều này là tiềm ẩn hạn chế an toàn cho dẫn đường và định vị dân sự.)
- Các thiết bị ứng dụng GPS:
Điện thoại di động
• ETEN Glofiish X500/X600/X650/X800-M700/M800/M810
• Asus P535/P735
15
Hình 3.1 : Kiến trúc hệ thống :
Mỗi người dùng khi tham gia vào hệ thống phải cung cấp vị trí của mình và những
bạn bè trên Facebook có thể theo dõi vị trí này. Người dùng có thể sử dụng 2 cách để
tham gia vào hệ thống. Có thể định vị trí bằng tay qua Web hoặc tự động xác định vị trí
thông qua thiết bị có hỗ trợ GPS. Thiết bị này được cài đặt một ứng dụng cụ thể.
User Login
Facebook
Server
Google
Map
Server
Facebook Application
Map
User’s
data
Friends info
Mobile
Application
Server
XHR
XHR: XMLHttpRequest
Database Server
SQL
Request
Map
Webservices
XHR
GET
method
Hình 3.2 : Giao diện từ Client
Client cho phép người dùng tự đặt địa điểm của riêng mình khi tích vào Set My
Location. Client gửi lên server vị trí của người dùng kèm theo giá trị của Share. Tức là
người người dùng muốn chia sẻ vị trí của họ cho tất cả các bạn bè hay không.
Tiếp đến người dùng có thể đặt các địa điểm yêu thích riêng khi tích vào Favourite
Places.
18
Hình 3.3 : Ví dụ địa điểm yêu thích
Client nhận vị trí và chú thích địa điểm đó rồi gửi lên server.
Mục Search Friend dùng để tìm kiếm một ai đó trong danh sách bạn bè của mình.
Client gửi nội dung tìm kiếm lên server. Khi được server trả về Map sẽ tự động chuyển
đến vị trí người bạn đấy nếu người đấy tồn tại và có trong cơ sở dữ liệu.
Khi ngươi dùng tích chuột vào một trong số bạn của họ. Client yêu cầu server trả về
thông tin của người bạn đó đồng thời hiển thị vị trí của người ấy vào giữa bản đồ cộng với
địa điểm yêu thích nếu có.
XHR: XMLHttpRequest
Hình 3.4 : Giao tiếp Client
3.2.2 . Facebook Server
19
Facebook
Applicaton
Server
XHR