tham gia các chức năng, cụ thể là:
• Hot Location Activity: Activity này thực hiện kết nối tới Foloyu server, trích đưa ra thông tin các địa điểm hiện đang được nhiều người quan tâm (dựa trên rate cao) dưới dạng danh sách. Từ đây, người sử dụng có thể có thể có 3 lựa chọn, tìm kiếm địa điểm, xem danh sách các phân loại địa điểm hot, xem thông tin cụ thể về 1 địa điểm, Refresh lại danh sách địa điểm nóng này. • My Favorite Activity: tương tự như Hot Location Activity, activity này kết
nối đến server, xem danh sách các địa điểm yêu thích của tôi.
• Friend’s Feed Activity: Activity này cho người dùng xem thông tin gần đây bạn bè mình đang làm gì, họ đã làm gì thời gian qua, comment, checkin location nào.
• My Profile Activity: Activity hiện thông tin cá nhân của người sử dụng, người dùng có thể xem danh sách bạn bè từ đây, thực hiện tìm kiếm bạn bè, xem vị trí hiện thời của mình. Người dùng cũng có thể đăng xuất từ activity này. Khi đăng xuất, toàn bộ thông tin về username và password không còn trong điện thoại nữa.
Khi search, người dùng sẽ nhập từ khóa cần search và khoảng cách tối đa từ vị trí người sử dụng tới kết quả. Sau đó, kết quả sẽ được hiển thị dưới dạng danh sách trên activity Search Result. Từ đây, người sử dụng có thể bấm vào một địa điểm cụ thể để xem thông tin về địa điểm đó trong Location Detail Activity. Từ Activity này, người dùng có thể sử dụng các chức năng sau đây: xem vị trí của địa điểm trên Maps, và từ đó tìm chỉ đường từ vị trí người dùng đang đứng đến vị trí của location này. Người dùng có thể gọi điện tới địa điểm này bằng cách bấm vào menu call, người dùng có thể gửi email, xem thông tin trên website, đánh dấu địa điểm này làm địa điểm yêu thích. Người dùng cũng có thể bình luận(comment), đánh giá(rate) về địa điểm này, đưa ra thông báo vừa checkin vào địa điểm này.
1.11. Cài đặt và triển khai ứng dụng
1.11.1. Cài đặt
Sau khi tiến hành build chương trình ta thu được file DATN.apk
Tiến hành cài đặt trên Emulator của Android trên môi trường giả lập (hướng dẫn cài đặt sử dụng adb):
Bước 1: cài đặt ADB (Android Debug Bridge)
Download và giải nén tập tin ADB.zip vào thư mục tools của Android SDK.
Bước 2: cài file .apk
Copy file DATN.apk vào thư mục tools của Android SDK Khởi động Emulator muốn cài đặt:
Vào command di chuyển đến thư mục chứa file apk Gõ lệnh adb install DATN.apk
Chờ trong giây lát sau đó có thể chạy thử nghiệm trên emulator.
Tiến hành cài đặt trên máy điện thoại Motorola Milestone (hướng dẫn cài đặt thông qua AppsInstaller):
Bước 1: Cài AppsInstaller
Bước 2: Cài đặt file DATN.apk copy file bkMedia.apk vào thẻ nhớ.
Trên điện thoại chạy ứng dụng AppsInstaller, chương trình này sẽ tự tìm các file .apk và để nghị bạn cài vào. Chỉ cần bấm Install để tiến hành cài đặt. Sau đó có thể sử dụng thử nghiệm chương trình.
1.11.2. Đánh giá và định hướng phát triển
Ứng dụng Foloyu trên nền Android về cơ bản đã cài đặt được những chức năng cơ bản nhất mà hiện giờ server Foloyu có thể đáp ứng được. Giao diện người dùng chưa thực sự nổi bật nhưng cũng khá đơn giản và thuận tiện cho người sử dụng. Ứng dụng chạy được trên hết các dòng điện thoại Android và đã được chạy thử nghiệm trên điện thoại Motorola Milestone chạy hệ điều hành Android 2.1 và cho kết quả khả quan, giao diện đẹp, chương trình chạy tốt. Tuy nhiên, những chức năng phức tạp hơn như tìm kiếm bạn bè theo tiêu chí, nhận gửi các Feed vẫn chưa hoàn thành do phía server Foloyu chưa cài đặt được các chức năng này. Trong tương lai, khi tiếp tục phát triển dự án Foloyu, những chức năng này sẽ được đưa vào phát triển vì toàn bộ thiết kế use case và yêu cầu phần mềm đã được hoàn thiện trong khuôn khổ đồ án. Đồng thời, trong tương lai em sẽ tham gia cùng các bạn tối ưu hóa code, tối ưu hóa các giao diện người dùng để đảm bảo chương trình chạy nhanh nhất và thân thiện nhất với người sử dụng.
GIẢI PHÁP THỰC TIỄN CHO ĐỊNH VỊ TRONG MẠNG ĐỊA XÃ HỘI FOLOYU
Nội của chương này sẽ trình bày các vấn đề sau:
o Mô hình giải pháp định vị bằng sóng wifi cho Foloyu.
o Các thuật toán định vị cho Foloyu.
o Ứng dụng lấy mẫu trên client Android.
o Server thu thập dữ liệu lấy mẫu.
Khái niệm định vị người dùng trong Foloyu không hướng tới mục đích chính xác tuyệt đối mà hướng tới khả năng đưa ra thông báo cho người dùng biết họ đang ở địa điểm nào trong số các địa điểm có trong cơ sở dữ liệu của Foloyu. Điều này rất hữu ích cho các chức năng kết bạn, chia sẻ thông tin trong Foloyu. Lâu nay chúng ta hay hiểu định vị chính xác là phải đưa ra tọa độ bao nhiêu nhưng thực tế cho thấy, tọa độ bao nhiêu không quan trọng bằng ý nghĩa của tọa độ đó. Ý nghĩa này nằm ở chỗ, người dùng đang đứng ở phố nào, hay ở trong nhà hàng nào. Đây mới là thông tin định vị mà Foloyu hướng tới.
1.12. Định vị trên thiết bị chạy hệ điều hành Android
Định vị người dùng trên thiết bị di động là khá phức tạp. Việc đọc các tín hiệu để qua đó định vị người dùng thường có nhiều nhiễu dẫn đến việc định vị có sai số khá lớn. Một số nguyên nhân sau dẫn đến sai số được nêu ra dưới đây:
• Có quá nhiều nguồn thông tin để định vị: GPS, CellID và wi-fi signal để cung cấp những thông tin qua đó xác định được vị trí người dùng. Tuy nhiên, xác định xem nguồn thông tin nào là đúng và chính xác, hơn nữa lại phải đáp ứng nhanh, tiêu tốn ít Pin là một vấn đề cần phải được tính toán kĩ, đôi khi ta phải hi sinh cái này để đạt cái kia. Ví dụ, khi dùng GPS ta phải chấp nhận tốn pin, không sử dụng được ở trong nhà, vv… để đạt được độ chính xác cao. • Người sử dụng di chuyển: vị trí của người dùng luôn thay đổi, ta phải tính
đến sự thay đổi này và thường xuyên nhận lại tín hiệu, tính toán lại qua đó mới có thể có được vị trí chính xác của người dùng.
Những vấn đề này làm cho việc xác định vị trí một cách chính xác trở nên rất khó khăn. Sau đây là các bước giúp xác định vị trí của người dùng một cách có hiệu quả:
i. Khởi động ứng dụng
iii. Duy trì một vị trí tốt nhất cho thời điểm hiện tại iv. Ngừng lắng nghe update location
v. Chọn lấy vị trí tốt nhất từ lần tính toán trước.
Hình 4-34: Mô hình định vị trên Android