Bối cảnh và vấn đề nghiên cứu
Bối cảnh thực tiễn và lý do chọn đề tài
Trong những năm gần đây, ngành dịch vụ tại Việt Nam, đặc biệt là lĩnh vực lưu trú và giải trí, ghi nhận sự phát triển mạnh mẽ nhằm nâng cao giá trị gia tăng, đáp ứng nhu cầu tái tạo sức lao động và nâng cao chất lượng đời sống xã hội. Tuy nhiên, thực trạng quản lý và cung cấp dịch vụ du lịch – giải trí vẫn bộc lộ nhiều hạn chế nghiêm trọng. Tác giả chỉ rõ các hiện tượng tiêu cực như nạn "chặt chém", bắt nạt du khách phương Tây, lừa đảo chỗ ở, dịch vụ và hạ tầng yếu kém làm ảnh hưởng xấu đến văn hóa xã hội và tâm lý khách du lịch.
Bên cạnh đó, phương thức đặt phòng truyền thống bộc lộ nhiều điểm bất cập:
- Người có nhu cầu phải đến trực tiếp quầy tiếp tân của khách sạn hoặc quán karaoke để trao đổi, khảo sát cơ sở vật chất rồi mới đưa ra quyết định đặt phòng.
- Quy trình này làm mất nhiều thời gian, phát sinh chi phí đi lại và khiến người đặt phòng không có nhiều sự lựa chọn so sánh do chỉ tiếp cận được địa điểm đã định trước.
- Du khách đối mặt với các rủi ro thực tế như không tìm được nơi lưu trú khi đi du lịch (phải ngủ lề đường vì thiếu phòng), hoặc các hội nghị đông người phải tổ chức trong không gian chật hẹp do thủ tục đặt phòng rườm rà.
Từ bối cảnh đó, tác giả đề xuất xây dựng ứng dụng di động mang tên "Katel" (kết hợp từ "Ka" trong Karaoke và "tel" trong Hotel) nhằm kết nối trực tiếp khách hàng với các đơn vị cung cấp dịch vụ lưu trú và giải trí, giúp người dùng chủ động tìm kiếm, khảo sát và đặt phòng trước ngay trên điện thoại thông minh (smartphone).
Mục tiêu và nhiệm vụ nghiên cứu
Mục tiêu tổng quát của đề tài là xây dựng hoàn chỉnh ứng dụng di động hỗ trợ đặt phòng khách sạn và phòng karaoke trên nền tảng Android, bảo đảm tính trung thực, tin cậy và tiện lợi của thông tin.
Các nhiệm vụ nghiên cứu cụ thể bao gồm:
- Nghiên cứu thực trạng quy trình đặt phòng truyền thống và khảo sát các mô hình ứng dụng, website đặt phòng hiện có trên thị trường.
- Tìm hiểu nền tảng hệ điều hành Android và ngôn ngữ lập trình Java.
- Nghiên cứu cơ chế tích hợp nền tảng dịch vụ đám mây Google Firebase và bộ công cụ thanh toán trực tuyến PayPal Android SDK.
- Phân tích, thiết kế hệ thống dữ liệu, sơ đồ quan hệ thực thể, sơ đồ ca sử dụng (Use Case) và sơ đồ luồng dữ liệu (Data Flow Diagram - DFD).
- Xây dựng và triển khai giao diện, chức năng thực tế của ứng dụng Katel trên thiết bị di động.
Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu: Ứng dụng đặt phòng khách sạn và phòng hát karaoke trên thiết bị di động; mô hình thương mại điện tử khách hàng tới khách hàng (C2C); các công nghệ hỗ trợ lập trình ứng dụng Android, cơ sở dữ liệu thời gian thực và thanh toán điện tử.
- Phạm vi không gian và công nghệ: Nghiên cứu và triển khai trên hệ điều hành Android (hỗ trợ các thiết bị di động thông minh); thử nghiệm hiển thị gợi ý địa điểm theo vị trí địa lý với bán kính 15 km; tích hợp Google Play Services và hệ thống bản đồ số.
- Phạm vi đối tượng sử dụng: Hệ thống phân định hai nhóm người dùng chính là tài khoản khách hàng cá nhân và tài khoản đại diện doanh nghiệp (trong đó tài khoản doanh nghiệp kế thừa từ tài khoản cá nhân và bổ sung các đặc quyền quản lý phòng, tiếp nhận đơn đặt).
- Thời gian thực hiện: Đề tài được hoàn thành và báo cáo vào tháng 05 năm 2017 tại Khoa Công nghệ Thông tin – Điện – Điện tử, Trường Đại học Thủ Dầu Một (Bình Dương).
Cơ sở lý thuyết và phương pháp
Khung lý thuyết và mô hình ứng dụng
Đề tài vận dụng mô hình thương mại điện tử C2C (Consumer-to-Consumer) nhằm đa dạng hóa nguồn cung cấp dịch vụ đặt phòng về cả chất lượng lẫn giá cả, tạo môi trường kết nối linh hoạt giữa các cá nhân/đơn vị kinh doanh và khách hàng có nhu cầu.
Tác giả hệ thống hóa quy trình đặt phòng truyền thống qua 8 bước tiêu chuẩn để làm căn cứ tin học hóa lên ứng dụng di động:
| Thứ tự bước |
Tên bước trong quy trình truyền thống |
| Bước 1 |
Nhận yêu cầu đặt phòng |
| Bước 2 |
Xác định khả năng đáp ứng của khách sạn |
| Bước 3 |
Thỏa thuận và thuyết phục việc đặt phòng với khách |
| Bước 4 |
Nhập các thông tin đặt phòng |
| Bước 5 |
Khách sạn hoặc karaoke xác nhận lại việc đặt phòng |
| Bước 6 |
Lưu thông tin lại việc đặt phòng |
| Bước 7 |
Nhận khẳng định lại việc đặt phòng từ khách |
| Bước 8 |
Tổng hợp tình hình đặt phòng |
Nền tảng công nghệ và công cụ tích hợp
- Hệ điều hành Android và Java: Nền tảng mã nguồn mở phát hành theo giấy phép Apache, sử dụng ngôn ngữ Java để phát triển các thành phần giao diện và xử lý logic cho thiết bị di động.
- Google Firebase: Nền tảng điện toán đám mây cung cấp hệ thống cơ sở dữ liệu NoSQL Realtime Database (đồng bộ hóa dữ liệu thời gian thực giữa các client và hỗ trợ offline), Firebase Authentication (xác thực người dùng), Firebase Storage (lưu trữ tệp hình ảnh), Firebase Cloud Messaging (FCM - truyền nhận gói tin thông báo dung lượng tối đa 4KB), cùng các công cụ hỗ trợ như Firebase Analytics, Remote Config, Test Lab, Crash Reporting, App Indexing và Dynamic Links.
- PayPal Android SDK: Bộ công cụ thanh toán phát triển dựa trên nền tảng Braintree, cho phép ứng dụng di động tiếp nhận thanh toán trực tuyến qua thẻ tín dụng quốc tế (Visa, MasterCard) và tài khoản PayPal.
- Hệ thống định vị toàn cầu GPS (Global Positioning System): Sử dụng để tự động xác định tọa độ người dùng, phục vụ chức năng tìm kiếm và gợi ý các doanh nghiệp xung quanh.
// Cấu hình SDK Firebase trong tệp build.gradle (root-level)
dependencies {
classpath 'com.gms:google-services:3.0'
}
// Cấu hình plugin và thư viện trong tệp build.gradle (app-level)
apply plugin: 'com.google-services'
// Cấu hình thư viện PayPal Android SDK trong dependencies
dependencies {
compile 'com.sdk:paypal-android-sdk:2.x'
}
Phương pháp nghiên cứu và khảo sát thực tế
Tác giả kết hợp hai phương pháp nghiên cứu chính:
- Phương pháp nghiên cứu tài liệu: Thu thập, tổng hợp các tài liệu kỹ thuật về Android SDK, tài liệu API Firebase của Google và tài liệu tích hợp PayPal SDK.
- Phương pháp tham khảo chuyên gia: Trao đổi chuyên môn với giảng viên hướng dẫn nhằm định hình luồng xử lý và phương án lập trình tối ưu.
Đồng thời, đề tài tiến hành khảo sát ứng dụng di động Navi Booking (Website: http://navi.vn/):
- Đặc điểm: Ứng dụng đặt phòng karaoke và khách sạn không yêu cầu khách hàng đăng ký tài khoản; dữ liệu địa điểm do quản trị viên tự biên tập và cung cấp; việc đặt phòng được thực hiện gián tiếp thông qua trung gian admin liên hệ lại cơ sở.
- Ưu điểm: Dễ kiểm soát chất lượng thông tin hiển thị trên ứng dụng.
- Nhược điểm: Cơ sở dữ liệu khách sạn, quán karaoke bị hạn chế, không phong phú.
Giải pháp kỹ thuật xử lý rủi ro nghiệp vụ
Để giải quyết các bài toán phát sinh trong môi trường mạng mở, tác giả đưa ra các biện pháp cụ thể:
- Ngăn chặn thông tin phòng ảo: Mỗi phòng khi đăng tải bắt buộc phải có đủ 2 bức ảnh: 1 ảnh chọn từ thư viện (ảnh chụp trước có thể qua chỉnh sửa) và 1 ảnh bắt buộc chụp trực tiếp từ máy ảnh (camera) của điện thoại tại thời điểm đăng tải (không qua chỉnh sửa). Đồng thời, mỗi doanh nghiệp bị giới hạn đăng tối đa 5 phòng.
- Ngăn chặn doanh nghiệp ảo: Doanh nghiệp bắt buộc phải hoàn thiện hồ sơ thông tin và phải được tài khoản Quản trị viên (Admin) xét duyệt trước khi chính thức hoạt động trên hệ thống.
- Rủi ro giao dịch thanh toán: Ứng dụng tích hợp thông báo khuyến cáo người dùng sau khi thao tác đặt phòng về các điều khoản đặt cọc tiền trước qua PayPal.
Thiết kế và triển khai
Phân tích hệ thống và kiến trúc dữ liệu
Hệ thống được mô hình hóa qua các sơ đồ chuyên môn:
- Sơ đồ cơ sở dữ liệu và sơ đồ quan hệ thực thể (ERD): Quản lý các thực thể người dùng, tài khoản đại diện doanh nghiệp, thông tin phòng, thông tin giao dịch đặt phòng và đánh giá.
- Sơ đồ Use Case và Sơ đồ luồng dữ liệu (DFD): Xây dựng chi tiết từ sơ đồ DFD cấp 0 đến các luồng dữ liệu chức năng:
- DFD Đăng ký tài khoản khách hàng và Đăng ký đại diện doanh nghiệp.
- DFD Đăng nhập và Cập nhật thông tin tài khoản cá nhân / thông tin công ty.
- DFD Đăng thông tin phòng.
- DFD Đặt phòng và Xử lý thanh toán.
- DFD Liên hệ và Trao đổi giữa khách hàng và doanh nghiệp.
Phân quyền người dùng
Hệ thống thiết lập ma trận phân quyền rõ ràng giữa ba nhóm đối tượng (theo Bảng 4.1 của khóa luận):
| Nhóm đối tượng |
Quyền hạn và Chức năng trên hệ thống |
| Khách hàng cá nhân |
Tìm kiếm phòng, xem chi tiết, định vị GPS, đặt phòng, đặt cọc qua PayPal, gửi phản hồi/đánh giá, cập nhật thông tin cá nhân. |
| Đại diện doanh nghiệp |
Kế thừa toàn bộ quyền của khách hàng; có thêm quyền đăng thông tin phòng (tối đa 5 phòng), nhận thông báo đặt phòng đẩy (Push Notification), quản lý danh sách phòng đã đăng và xác nhận yêu cầu đặt phòng. |
| Quản trị viên (Admin) |
Kiểm tra hồ sơ thông tin doanh nghiệp đăng ký mới, thực hiện thao tác duyệt hoặc từ chối doanh nghiệp trên hệ thống. |
Triển khai các chức năng chính trên ứng dụng
- Định vị vị trí và gợi ý theo bản đồ: Ứng dụng yêu cầu cấp quyền truy cập GPS, tự động định vị vị trí hiện tại của người dùng hoặc cho phép người dùng chọn một khu vực tùy ý, hiển thị danh sách các doanh nghiệp trên bản đồ trong vòng bán kính 15 km.
- Xác thực tài khoản khách hàng:
- Khi người dùng chọn trường "Email" trên giao diện đăng ký, hệ thống tự động gọi hộp thoại lấy danh sách tài khoản Google hiện có trên thiết bị để điền vào ô nhập liệu nhằm đảm bảo tính xác thực.
- Tiến trình đăng ký gồm 5 bước: (1) Kiểm tra dữ liệu nhập -> (2) Kết nối Firebase Authentication -> (3) Yêu cầu đăng nhập Firebase -> (4) Cập nhật dữ liệu người dùng vào Realtime Database -> (5) Chuyển về màn hình chính.
- Đăng ký tài khoản doanh nghiệp: Chia thành hai phần dữ liệu: thông tin người đại diện (ràng buộc tương tự khách hàng) và thông tin doanh nghiệp (chọn loại hình kinh doanh, tên doanh nghiệp, cung cấp tọa độ vị trí trên bản đồ). Sau khi tạo, tài khoản chuyển vào hàng đợi để Admin xét duyệt.
- Khôi phục mật khẩu: Khi người dùng gửi yêu cầu quên mật khẩu, ứng dụng trích xuất địa chỉ email và yêu cầu dịch vụ Firebase gửi liên kết khôi phục trực tiếp đến hòm thư Gmail của người dùng.
- Quy trình đặt phòng và Đặt cọc PayPal: Khách hàng có thể thao tác đặt phòng khi chưa đăng nhập hoặc đã đăng nhập. Khi chọn đặt cọc tiền trước, ứng dụng kết nối trực tiếp đến giao diện PayPal SDK (chạy trên môi trường Android 4.x trở lên), yêu cầu đăng nhập tài khoản PayPal, chọn phương thức thanh toán thẻ và trả về kết quả giao dịch.
- Thông báo đẩy (Push Notification): Tích hợp dịch vụ Firebase Cloud Messaging để gửi thông báo tức thời trên thanh trạng thái (Action Bar) và mục nội dung chi tiết (Notification Content) của thiết bị doanh nghiệp ngay khi có khách hàng thực hiện thao tác đặt phòng.
- Tìm kiếm địa điểm: Hỗ trợ tìm kiếm theo các từ khóa dịch vụ và tên riêng, được thử nghiệm với các từ khóa thực tế:
"van trong", "kara", "hotel", "mira".
Nội dung chính theo từng chương
Chương 1: Tổng quan
Chương 1 phân tích bối cảnh ra đời của đề tài, thực trạng và các vấn đề tồn đọng của phương thức đặt phòng truyền thống. Tác giả khái quát tình hình phát triển của ngành dịch vụ khách sạn và karaoke tại Việt Nam. Đồng thời, chương này giới thiệu tổng quan các công nghệ nền tảng được lựa chọn: dịch vụ điện toán đám mây Google Firebase (các phân hệ Analytics, Realtime Database, Cloud Messaging, Authentication...), bộ công cụ thanh toán trực tuyến PayPal Android SDK và nền tảng hệ điều hành Android (ngôn ngữ Java). Cuối chương xác định rõ mục tiêu, đối tượng và phương pháp nghiên cứu.
Chương 2: Cơ sở lý thuyết
Chương 2 trình bày chi tiết cơ sở lý thuyết về quy trình đặt phòng gồm 8 bước từ tiếp nhận yêu cầu đến tổng hợp tình hình. Tác giả phân tích kết quả khảo sát ứng dụng thực tế Navi Booking (http://navi.vn/), chỉ rõ ưu nhược điểm của mô hình dữ liệu đóng do admin tự quản lý. Chương này cũng hướng dẫn quy trình kỹ thuật tích hợp Firebase và PayPal SDK vào tệp cấu hình Gradle của dự án Android (yêu cầu Google Play Services phiên bản 10.1 trở lên, hệ điều hành Android 4.x trở lên), đồng thời đưa ra các giải pháp kỹ thuật xử lý rủi ro về phòng ảo, doanh nghiệp ảo và an toàn thanh toán.
Chương 3: Phân tích thiết kế cơ sở dữ liệu
Chương 3 tập trung vào việc mô hình hóa hệ thống thông tin. Tác giả trình bày chi tiết sơ đồ cơ sở dữ liệu vật lý, sơ đồ quan hệ thực thể (ERD), sơ đồ ca sử dụng (Use Case) và hệ thống sơ đồ luồng dữ liệu (DFD). Các sơ đồ DFD được phân rã chi tiết từ mức khung cấp 0 đến các tiến trình nghiệp vụ con: đăng ký tài khoản, cập nhật thông tin tài khoản, đăng ký đại diện doanh nghiệp, đăng nhập, cập nhật thông tin công ty, đăng thông tin phòng, đặt phòng và xử lý liên hệ.
Chương 4: Xây dựng ứng dụng
Chương 4 là chương thực nghiệm triển khai toàn bộ giao diện và chức năng của ứng dụng Katel trên thiết bị di động. Tác giả trình bày ma trận phân quyền người dùng (Bảng 4.1) và minh họa chi tiết từng màn hình chức năng thông qua hệ thống hình ảnh thực tế (từ Hình 4.1 đến Hình 4.56): tự động lấy vị trí GPS, chọn khu vực tìm kiếm, hiển thị bản đồ trong bán kính 15 km, giao diện Navigation, giao diện TabLayout (gồm hai tab "HOTEL" và "KARA"), tiến trình đăng ký khách hàng liên kết tài khoản Google, đăng ký doanh nghiệp, khôi phục mật khẩu qua Gmail, giao diện kết nối cổng thanh toán PayPal SDK, chức năng thông báo đẩy cho doanh nghiệp và kết quả thử nghiệm tìm kiếm dữ liệu.
Kết luận và hướng phát triển
Phần tổng kết khẳng định mức độ hoàn thành các mục tiêu xây dựng ứng dụng di động Katel, đánh giá các tính năng đã vận hành ổn định trên môi trường Android và đề ra các định hướng mở rộng hệ thống trong tương lai.
Kết quả và đóng góp
Kết quả chính đạt được
- Xây dựng thành công ứng dụng di động hoàn chỉnh "Katel" trên nền tảng Android, tích hợp cơ sở dữ liệu thời gian thực Google Firebase.
- Triển khai đầy đủ hệ thống giao diện hai phân hệ dịch vụ: Lưu trú (Hotel) và Giải trí (Karaoke) trên cấu trúc TabLayout và Navigation Drawer.
- Tích hợp thành công chức năng thanh toán trực tuyến và đặt cọc qua bộ công cụ PayPal Android SDK trên thiết bị di động.
- Ứng dụng dịch vụ định vị GPS kết hợp bản đồ số để lọc và hiển thị chính xác các đơn vị cung cấp dịch vụ trong bán kính 15 km xung quanh vị trí người dùng.
- Vận hành cơ chế thông báo đẩy (Firebase Cloud Messaging) tự động gửi tín hiệu đến thiết bị của doanh nghiệp khi có giao dịch đặt phòng phát sinh.
- Thử nghiệm chức năng tìm kiếm dữ liệu với các từ khóa thực tế đạt kết quả phản hồi chính xác (
"van trong", "kara", "hotel", "mira").
Giải pháp và kiến nghị tác giả đề xuất
- Đề xuất cơ chế kiểm soát chất lượng dữ liệu phòng đăng tải thông qua quy định bắt buộc chụp 1 ảnh trực tiếp bằng camera tại thời điểm đăng bài (không chỉnh sửa) kết hợp 1 ảnh từ thư viện, đồng thời khống chế định mức tối đa 5 phòng cho mỗi doanh nghiệp.
- Đề xuất quy trình duyệt tài khoản doanh nghiệp bán tự động: tài khoản doanh nghiệp sau khi khai báo thông tin phải thông qua khâu xét duyệt của Quản trị viên (Admin) mới được phép đăng bài và nhận đơn.
- Tận dụng danh sách tài khoản Google Account khả dụng trên hệ điều hành của thiết bị di động để tự động điền trường Email khi đăng ký, hạn chế tình trạng đăng ký bằng thông tin ảo.
Đóng góp của đề tài
- So với các ứng dụng khảo sát trước đó (như Navi Booking – chỉ hỗ trợ mô hình dữ liệu đóng do admin tự biên tập và thiếu cơ chế tài khoản người dùng), ứng dụng Katel đã mở rộng thành công sang mô hình C2C, cho phép doanh nghiệp tự chủ đăng ký, quản lý phòng và tương tác trực tiếp với khách hàng.
- Kết hợp đồng thời hai loại hình dịch vụ lưu trú và giải trí (khách sạn và karaoke) trên cùng một giao diện ứng dụng duy nhất.
- Đưa ra giải pháp thực hành mẫu về việc kết hợp giữa Firebase Realtime Database và PayPal SDK trên nền tảng lập trình Android Java.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của hệ thống
- Giới hạn số lượng bài đăng: mỗi tài khoản doanh nghiệp hiện chỉ được phép đăng tối đa 5 phòng để phục vụ kiểm soát dữ liệu.
- Cơ chế xác thực tài khoản email phụ thuộc hoàn toàn vào dịch vụ Google Play Services và tài khoản Google đã đồng bộ sẵn trên thiết bị Android của người dùng.
- Phương thức thanh toán trực tuyến mới chỉ tích hợp qua cổng quốc tế PayPal SDK (yêu cầu thẻ thanh toán quốc tế Visa/MasterCard hoặc tài khoản PayPal), chưa hỗ trợ các cổng thanh toán nội địa phổ biến tại Việt Nam.
- Khâu xét duyệt hồ sơ doanh nghiệp mới vẫn thực hiện thủ công qua giao diện của Quản trị viên, chưa có cơ chế đối soát giấy phép kinh doanh tự động.
Hướng phát triển tiếp theo
- Mở rộng quy mô cơ sở dữ liệu, nâng giới hạn số lượng phòng đăng tải cho các doanh nghiệp quy mô lớn.
- Tích hợp thêm các cổng thanh toán nội địa và ví điện tử phổ biến tại thị trường Việt Nam để tăng tính tiện dụng cho khách hàng nội địa.
- Tối ưu hóa thuật toán gợi ý địa điểm và nâng cao tốc độ tải dữ liệu bản đồ số.
- Nâng cấp giao diện người dùng và hoàn thiện hệ thống báo cáo thống kê doanh thu chi tiết cho tài khoản doanh nghiệp.
Giá trị tham khảo
Đối tượng thụ hưởng
Khóa luận là tài liệu tham khảo hữu ích cho:
- Sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm đang làm đồ án tốt nghiệp hoặc các đề tài môn học về lập trình ứng dụng di động trên nền tảng Android (Java).
- Lập trình viên mới bắt đầu muốn tìm hiểu quy trình tích hợp các dịch vụ của Google Firebase (Authentication, Realtime Database, Cloud Messaging, Storage) vào dự án Android thực tế.
- Người nghiên cứu cách thức tích hợp cổng thanh toán PayPal Android SDK và xử lý định vị GPS trên bản đồ số.
Nội dung có giá trị tham khảo chuyên sâu
- Chương 2 & 4: Cung cấp hướng dẫn cấu hình chi tiết tệp
build.gradle để liên kết thư viện Firebase (google-services:3.0) và PayPal SDK.
- Chương 3: Cung cấp tài liệu thiết kế hệ thống hoàn chỉnh với sơ đồ luỡng dữ liệu DFD chi tiết từ cấp 0 đến các tiến trình nghiệp vụ con trong một ứng dụng thương mại điện tử C2C.
- Quy trình xử lý nghiệp vụ: Giải pháp chống dữ liệu ảo (bắt buộc chụp ảnh camera trực tiếp) có thể áp dụng cho các đề tài xây dựng ứng dụng chia sẻ tài nguyên, bất động sản hoặc dịch vụ lưu trú khác.
Câu hỏi thường gặp
1. Tên gọi ứng dụng "Katel" có nguồn gốc và ý nghĩa như thế nào?
Từ "Katel" được tác giả tạo nên bằng cách ghép cụm từ "Ka" trong "Karaoke" (dịch vụ phòng hát giải trí) và cụm từ "tel" trong "Hotel" (dịch vụ phòng khách sạn lưu trú), mang ý nghĩa biểu trưng cho việc tích hợp cả hai loại hình dịch vụ này trong cùng một ứng dụng di động.
2. Ứng dụng sử dụng biện pháp kỹ thuật nào để ngăn chặn tình trạng doanh nghiệp đăng thông tin phòng ảo?
Tác giả quy định mỗi phòng đăng lên bắt buộc phải có đủ 2 bức ảnh: một bức ảnh được lấy từ thư viện (có thể chụp trước hoặc qua chỉnh sửa) và bức ảnh còn lại bắt buộc phải chụp trực tiếp từ máy ảnh (camera) của thiết bị tại thời điểm đăng tải, không được phép chỉnh sửa chi tiết. Đồng thời, mỗi doanh nghiệp bị giới hạn đăng tối đa 5 phòng.
3. Để đảm bảo tính trung thực của dữ liệu tài khoản, ứng dụng xử lý khâu nhập Email đăng ký như thế nào?
Khi người dùng chọn ô nhập liệu "Email" trên giao diện đăng ký, ứng dụng không cho nhập tự do mà sẽ hiển thị thông báo yêu cầu lấy địa chỉ email từ danh sách các tài khoản Google đã tồn tại sẵn trên điện thoại di động (qua Google Play Services).
4. Bán kính gợi ý và hiển thị doanh nghiệp trên bản đồ của ứng dụng là bao nhiêu?
Hệ thống sử dụng cảm biến GPS để lấy tọa độ hiện tại của người dùng hoặc khu vực do người dùng chỉ định, sau đó quét và hiển thị thông tin các doanh nghiệp khách sạn, karaoke trên bản đồ trong vòng bán kính 15 km tính từ trung tâm và vị trí người dùng.
5. Điều kiện kỹ thuật tối thiểu để ứng dụng Katel tích hợp và vận hành Firebase cùng PayPal SDK là gì?
Theo tài liệu khóa luận, Firebase yêu cầu thiết bị chạy phiên bản Google Play Services 10.1 trở lên và cấu hình com.gms:google-services:3.0 trong build.gradle. Đối với PayPal Android SDK, ứng dụng yêu cầu môi trường vận hành từ Android 4.x trở lên và khai báo thư viện trong tệp cấu hình ứng dụng.
Kết luận
Khóa luận tốt nghiệp của sinh viên Nguyễn Thái Sơn đã giải quyết trọn vẹn bài toán xây dựng ứng dụng di động "Katel" hỗ trợ đặt phòng khách sạn và phòng hát karaoke theo mô hình C2C trên hệ điều hành Android. Tác giả đã tích hợp thành công nền tảng cơ sở dữ liệu thời gian thực Google Firebase, cổng thanh toán trực tuyến PayPal SDK và hệ thống định vị GPS nhằm tạo nên giải pháp đặt chỗ tiện lợi, minh bạch cho du khách. Đề tài đóng góp một tài liệu kỹ thuật có giá trị tham khảo thực tế cao về quy trình phân tích thiết kế hệ thống và kỹ thuật lập trình ứng dụng di động hướng dịch vụ.