Đồ Án HCMUTE: Xây Dựng Ứng Dụng Bán Gạo Trên Nền Tảng Android

Đồ án kỹ thuật nghiên cứu hcmute xây dựng ứng dụng bán gạo trên nền tảng android, thiết kế chi tiết, tính toán kỹ thuật theo tiêu chuẩn, đánh giá tính khả thi dự án.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

khóa luận tốt nghiệp

2020

100
3
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. CHƯƠNG 1: CƠ SỞ LÝ THUYẾT

1.1. SDK là gì?

1.2. Phân loại SDK

1.3. Lợi ích của SDK

1.4. Firebase là gì?

1.5. Dịch vụ của Firebase

1.6. Lịch sử ra đời của Firebase

2. CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU

2.1. Khảo sát hiện trạng

2.2. Xác định yêu cầu

2.2.1. Nhận diện tác nhân và các chức năng trong sơ đồ use case

2.2.2. Mô tả usecase

2.2.3. Usecase đăng nhập

2.2.4. Usecase đăng xuất

2.2.5. Usecase quên mật khẩu

2.2.6. Usecase cập nhật tài khoản

2.2.7. Usecase xem lịch sử đơn hàng

2.2.8. Usecase xem giỏ hàng

2.2.9. Usecase đặt hàng

2.2.10. Usecase đánh giá

2.2.11. Usecase thêm loại sản phẩm

2.2.12. Usecase thêm sản phẩm

2.2.13. Usecase cập nhật sản phẩm

2.2.14. Usecase quản lý đơn hàng

2.2.15. Usecase cập nhật trạng thái đơn hàng

2.2.16. Usecase xem chi tiết đơn hàng

3. CHƯƠNG 3: THIẾT KẾ PHẦN MỀM

3.1. Thiết kế hệ thống

3.2. Thiết kế dữ liệu

3.2.1. Mô hình cơ sở dữ liệu dạng JSON

3.2.2. Lược đồ dữ liệu quan hệ

3.2.3. Mô tả cơ sở dữ liệu

4. CHƯƠNG 4: THIẾT KẾ GIAO DIỆN

4.1. Thiết kế giao diện Admin

4.1.1. Giao diện màn hình chờ

4.1.2. Giao diện màn hình đăng nhập

4.1.3. Giao diện màn hình Trang chủ

4.1.4. Giao diện trang Menu

4.1.5. Giao diện màn hình Banner

4.1.6. Giao diện quản lý Banner

4.1.7. Giao diện thêm Banner

4.1.8. Giao diện Đơn hàng

4.1.9. Giao diện sửa đơn hàng

4.1.10. Giao diện quản lý loại sản phẩm

4.1.11. Giao diện thêm loại sản phẩm

4.1.12. Giao diện sản phẩm

4.1.13. Giao diện quản lý sản phẩm

4.1.14. Giao diện thêm sản phẩm

4.1.15. Giao diện chi tiết đơn hàng

4.1.16. Giao diện bản đồ

4.2. Thiết kế giao diện người dùng

4.2.1. Giao diện màn hình chờ

4.2.2. Giao diện đăng ký

4.2.3. Giao diện đăng nhập

4.2.4. Giao diện Quên mật khẩu

4.2.5. Giao diện trang chủ

4.2.6. Giao diện Menu

4.2.7. Giao diện chỉnh sửa thông tin

4.2.8. Giao diện Yêu thích

4.2.9. Giao diện Đơn hàng

4.2.10. Giao diện Thay đổi mật khẩu

4.2.11. Giao diện liên hệ

4.2.12. Giao diện Giỏ hàng

4.2.13. Giao diện Sản phẩm

4.2.14. Giao diện chi tiết sản phẩm

4.2.15. Giao diện đánh giá và bình luận sản phẩm

4.2.16. Giao diện tìm kiếm

4.2.17. Giao diện chi tiết đơn hàng

4.2.18. Giao diện xem đánh giá và bình luận sản phẩm

5. CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ

5.1. Cài đặt Firebase cho ứng dụng

5.2. Tạo project trên Firebase

5.3. Kết nối Firebase và Project trên Android

5.4. Áp dụng Database Realtime

5.5. Thư viện hỗ trợ Firebase

5.5.1. Thư viện Firebase

5.5.2. Thư viện hỗ trợ Google maps

5.5.3. Thư viện hỗ trợ Phông chữ

5.6. Môi trường thử nghiệm và cài đặt

5.7. Kiểm thử phần mềm

PHẦN KẾT LUẬN

appendix.1. Những kết quả đạt được

appendix.2. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Giới thiệu Ứng dụng Bán Gạo Android từ Đồ án HCMUTE

Đồ án tốt nghiệp Ứng dụng bán gạo trên nền tảng Android tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (HCMUTE) tập trung vào việc xây dựng một nền tảng thương mại điện tử chuyên biệt. Đồ án giải quyết vấn đề cấp thiết về việc tiếp cận nguồn cung cấp gạo đa dạng và tiện lợi cho người tiêu dùng. Ứng dụng bán gạo Android này cung cấp giải pháp giải pháp bán gạo trên mobile, đáp ứng xu hướng bán gạo online ngày càng tăng. Nó tích hợp các tính năng quan trọng như thương mại điện tử điện gạo, ứng dụng quản lý bán gạo, giúp người dùng đặt gạo online android. Đồ án cũng đề cập đến những thách thức trong việc phát triển ứng dụng, bao gồm phát triển ứng dụng bán gạo, lập trình ứng dụng bán gạo android, và tích hợp thanh toán ứng dụng bán gạo.

1.1 Mục đích và Phạm vi Nghiên cứu

Mục đích chính của đồ án là xây dựng một ứng dụng bán gạo android hoàn chỉnh, thân thiện với người dùng. Ứng dụng đặt gạo online android này cần đáp ứng các yêu cầu về chức năng, hiệu suất và bảo mật. Phạm vi nghiên cứu bao gồm thiết kế, phát triển và thử nghiệm phần mềm bán gạo android. Đồ án tập trung vào các khía cạnh chính như: thiết kế ứng dụng bán gạo, cơ sở dữ liệu ứng dụng bán gạo, giao diện người dùng ứng dụng bán gạo, và quản lý kho ứng dụng bán gạo. Các công nghệ được sử dụng bao gồm Android Studio, Java/Kotlin, và có thể là một số API ứng dụng bán gạo khác để hỗ trợ các chức năng đặc thù. Android Studio bán gạo được chọn làm môi trường phát triển chính. Java bán gạo android hoặc Kotlin bán gạo android sẽ được sử dụng tùy thuộc vào thiết kế và hiệu quả phát triển. Cơ sở dữ liệu ứng dụng bán gạo cần đảm bảo tính toàn vẹn và hiệu năng cao. Ứng dụng quản lý đơn hàng ứng dụng bán gạo cần được thiết kế cẩn thận để đảm bảo quá trình quản lý đơn hàng diễn ra suôn sẻ. Tích hợp thanh toán ứng dụng bán gạo là một phần quan trọng cần được xem xét kỹ lưỡng. Đồ án cũng nghiên cứu về SEO ứng dụng bán gạomarketing ứng dụng bán gạo để tối ưu hóa khả năng tiếp cận người dùng.

1.2 Phương pháp Nghiên cứu và Công nghệ

Phương pháp nghiên cứu bao gồm việc khảo sát các ứng dụng bán gạo hiện có trên thị trường, phân tích các điểm mạnh, điểm yếu, và rút ra những bài học kinh nghiệm. Sau đó, thiết kế ứng dụng bán gạo được tiến hành dựa trên các yêu cầu chức năng, giao diện người dùng ứng dụng bán gạo được thiết kế để đảm bảo tính thân thiện và dễ sử dụng. Quá trình phát triển phần mềm tuân thủ mô hình phát triển phần mềm phù hợp, bao gồm các giai đoạn phân tích, thiết kế, lập trình, kiểm thử và triển khai. Các công nghệ chính được sử dụng là Android Studio, Java/Kotlin, và Firebase cho cơ sở dữ liệu và các dịch vụ hỗ trợ. Firebase ứng dụng bán gạo được lựa chọn vì tính năng thời gian thực và dễ tích hợp. Việc tích hợp thanh toán ứng dụng bán gạo có thể sử dụng các API thanh toán trực tuyến phổ biến. Mô hình dữ liệu ứng dụng bán gạo được thiết kế để tối ưu hiệu năng và khả năng mở rộng. Đồ án cũng xem xét việc sử dụng API ứng dụng bán gạo từ các nhà cung cấp bên thứ ba để tích hợp các tính năng bổ sung như bản đồ, đánh giá sản phẩm. Ứng dụng bán gạo HCMUTE github (nếu có) sẽ cung cấp mã nguồn mở cho cộng đồng. Mã nguồn ứng dụng bán gạo android giúp cho các nhà phát triển khác có thể tham khảo và phát triển thêm.

1.3 Đánh giá và Kết luận

Đồ án tốt nghiệp đánh giá thành công bằng việc xây dựng một ứng dụng bán gạo hoàn chỉnh, đáp ứng các yêu cầu đề ra. Việc đánh giá tập trung vào các khía cạnh: chức năng, hiệu suất, bảo mật, và khả năng sử dụng. Đánh giá ứng dụng bán gạo dựa trên các tiêu chí cụ thể. Kết quả kiểm thử cho thấy ứng dụng hoạt động ổn định và đáp ứng được nhu cầu người dùng. Việc triển khai ứng dụng bán gạo tiện ích này sẽ góp phần nâng cao trải nghiệm mua sắm trực tuyến cho người tiêu dùng. Ứng dụng bán gạo tốt nhất có thể sẽ là mục tiêu hướng tới trong các phiên bản sau. So sánh ứng dụng bán gạo với các sản phẩm hiện có trên thị trường là một phần quan trọng trong quá trình đánh giá. Tiềm năng ứng dụng bán gạo rất lớn, đặc biệt là trong bối cảnh thương mại điện tử đang phát triển mạnh mẽ. Thách thức ứng dụng bán gạo chính là cạnh tranh khốc liệt trên thị trường và việc duy trì tính bảo mật dữ liệu người dùng. Thực hành ứng dụng bán gạo giúp sinh viên tích lũy kinh nghiệm thực tiễn.

01/02/2025

Trích đoạn nội dung tài liệu

PHẦN MỞ ĐẦU 1. Tính cấp thiết của đề tài Trong thời đại ngày nay công nghệ thông tin đang được phát triển mạnh mẽ, nhanh chóng và xâm nhập vào nhiều lĩnh vực khoa học, kỹ thuật cũng như đời sống. Nó trở thành công cụ đắc lực cho các ngành như: quân sự, y học, quản lý… Đặc biệt sự phát triển như vũ bão của thiết bị di động đã thúc đẩy nhiều bước tiến mới trong đời sống hàng ngày. Với xu hướng bùng nổ của Internet hiện nay, hầu hết mọi việc đều sử dụng đến Internet.

Từ việc đặt hàng, mua bán, học tập, giải trí đều có sự góp mặt của Internet, vì vậy mà việc lướt web hay các ứng dụng di động dành cho việc tìm kiếm quán ăn, món ăn không còn mấy xa lạ với mọi người. Đặc biệt kể từ khi công nghệ ngày càng phát triển như các loại smartphone, được coi là bước đột phá mới của kênh phương tiện vì thế càng ngày càng được mở rộng, thuận tiện. Con người ngày càng bận rộn, thời gian biểu của bản thân gần như bị lấp đầy, nhu cầu con người cần làm mọi việc nhanh, tiện, gọn. Để giải quyết vấn đề đó các dịch vụ mua sắm trực tuyến, giao hàng tận nơi lần lượt ra đời giúp con người tiết kiệm thời gian và công sức hơn thay vì phải tự đến các cửa hàng, chợ hoặc siêu thị để chọn mua các sản phẩm mình cần.

Các mặt hàng thường bán trực tuyến trên mạng chủ yếu là đồ gia dụng, thiết bị điện, điện tử, may mặc, … mà các mặt hàng bách hóa khá ít, đặc biệt là các mặt hàng như gạo, nếp, tấm, trong khi gạo là lương thực chính của người Á Đông nói chung và người Việt Nam nói riêng. Các trang web bán hàng trực tuyến nếu có bán mặt hàng này thì chủng loại cũng không đa dạng, giá cả và chất lượng không thể đảm bảo vì đặc thù mặt hàng này vừa dễ mà lại vừa khó bảo quản. Hơn nữa người dùng khi cần tìm một loại nào đó trong các mặt hàng gạo này thì thường phải tìm rất nhiều nơi mới có, và đôi khi còn không tìm được. Nhận thấy vấn đề đó nhóm chúng em quyết định thực hiện đề tài này để tạo ra một ứng dụng di động chạy trên nền tảng Android cung cấp cho người dùng nhiều sự lựa chọn đối với loại mặt hàng thiết yếu trong cuộc sống hàng ngày của người dân Việt Nam.

Mục đích của đề tài  Tìm hiểu về SDK: định nghĩa SDK và phân biệt SDK.  Tìm hiểu về Firebase: định nghĩa Firebase và các dịch vụ Firebase hỗ trợ.  Xây dựng ứng dụng bán gạo trên nền tảng Andriod áp dụng SDK và Firebase. 1 do an KHÓA LUẬN TỐT NGHIỆP 3.

Cách tiếp cận và phương pháp nghiên cứu  Đối tượng nghiên cứu:  Tìm hiểu về SDK: định nghĩa SDK và phân biệt SDK.  Tìm hiểu về Firebase: định nghĩa Firebase và các dịch vụ Firebase hỗ trợ.  Phạm vi nghiên cứu: Với bài luận văn này, nhóm em sẽ tập trung tìm hiểu và thực hiện các nội dung sau:  Tìm hiểu các nội dung, kiến thức về SDK và Firebase.  Sau khi tìm hiểu, nhóm sẽ tập trung vận dụng những kiến thức đã tìm hiểu, đặc biệt là Firebase để xây dựng ứng dụng bán gạo trên nền tảng Android.

Kết quả dự kiến đạt được  Hiểu rõ kiến thức về SDK: định nghĩa SDK và phân biệt SDK.  Hiểu rõ kiến thức về Firebase: định nghĩa Firebase và dịch vụ Firebase cung cấp cho nhà phát triển.  Xây dựng thành công ứng dụng bán gạo trên nền tảng Android. 2 do an KHÓA LUẬN TỐT NGHIỆP PHẦN NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.

SDK là gì? SDK – Software Development Kit là một tập hợp công cụ hỗ trợ cho việc phát triển phần mềm thông qua một nền tảng nào đó. Hầu hết các nhà phát triển ứng dụng đều cần dùng tới SDK để thêm vào các tính năng nâng cao, hiển thị quảng cáo, thông báo dạng đẩy (push notification) cho ứng dụng. Chẳng hạn lập trình Android yêu cầu SDK cho Java, với ứng dụng iOS thì SDK cho Swift, còn lập trình ứng dụng Windows yêu cầu có .NET Framework SDK đi kèm với. SDK có thể chứa các API dưới dạng thư viện để giao tiếp với một ngôn ngữ nào đó hoặc để chứa một hệ thống phần cứng phức tạp có thể giao tiếp với một hệ thống nhúng.

Các công cụ phổ biến bao gồm các tiện ích gỡ rối phần mềm (debugging), thường ở dạng môi trường phát triển tích hợp (IDE). SDK cũng thường hay kèm theo các sample code và các ghi chú kỹ thuật hỗ trợ (documentation) hay tài liệu để giúp làm rõ các tài liệu tham khảo chính. Phân loại SDK:  Android SDK: bộ công cụ phát triển ứng dụng trên nền tảng Android.  Windows SDK: bộ công cụ phát triển ứng dụng chạy trên nền tảng Windows.

 Java SDK: hay nói cách khác là JDK. JDK là một tập con mở rộng của SDK, hay nói cách khác JDK là SDK cho Java hoặc Java SDK. Bộ công cụ này bao gồm các công cụ hữu ích để xây dựng và phát triển các Applications, Applets và Components viết bằng ngôn ngữ lập trình Java (không dùng ngôn ngữ khác như C, C++, v. Lợi ích của SDK SDK cho phép bạn có các tính năng khác nhau trong ứng dụng của mình giúp cung cấp một trải nghiệm người dùng tốt.

Ví dụ: cung cấp vị trí chính xác trong ứng dụng, tích hợp nhanh chóng và dễ dàng, độ chính xác của dữ liệu và triển khai cũng như nâng cấp đường dẫn và loại bỏ khi không cần dùng đến nữa. 3 do an KHÓA LUẬN TỐT NGHIỆP 1. Firebase là gì? Đó là một dịch vụ cơ sở dữ liệu thời gian thực hoạt động trên nền tảng đám mây được cung cấp bởi Google nhằm giúp các lập trình phát triển nhanh các ứng dụng bằng cách đơn giản hóa các thao tác với cơ sở dữ liệu. Dịch vụ của Firebase Dịch vụ Firebase có thể được chia thành hai nhóm:  Phát triển và thử nghiệm ứng dụng của bạn: Realtime Database, Auth, Test Lab, Crashlytics, Cloud Functions, Firestore, Cloud Storage, Performance Monitoring, Crash Reporting, Hosting  Phát triển và thu hút đối tượng của bạn: Firebase Analytics, Invites, Cloud Messaging, Predictions, AdMob, Dynamic Links, Adwords, Remote Config, App Indexing 1.

Lịch sử ra đời của Firebase Về mặt lịch sử, Firebase (tiền thân là Evolve) trước đây là một start up được thành lập vào năm 2011 bởi Andrew Lee và James Tamplin. Ban đầu, Evolve chỉ cung cấp cơ sở dữ liệu để các lập trình viên thiết kế các ứng dụng chat (và hiện tại thì để làm quen với realtime database thì bạn cũng làm ứng dụng chat đó thôi). Tuy nhiên, họ nhanh chóng nhận ra tiềm năng sản phẩm của mình khi nhận thấy các khách hàng không sử dụng cơ sở dữ liệu để làm ứng dụng chat, mà thay vào đó, để lưu các thông tin như game progress. Bộ đôi Lee và Tamplin quyết định tách mảng realtime ra để thành lập một công ty độc lập – chính là Firebase – vào tháng 4 năm 2012.

Vào tháng 10 năm 2014, Firebase gia nhập gia đình Google. Cả Google và Firebase đều càng lớn mạnh hơn. Firebase có điều kiện để phát triển thần tốc, mở rộng số lượng các dịch vụ con, còn Google có được một đội ngũ nhân lực chất lượng cao, năng động, cũng như cơ sở hạ tầng và sự hiệu quả mà các dịch vụ của Firebase mang lại, mà không phải xây dựng lại từ đầu. Hiện tại, Google đã chuyển các dịch vụ nền tảng hỗ trợ các lập trình viên bên ngoài về cho Firebase quản lý, chẳng hạn như Cloud Messaging, AdMob và Analytics.

Firebase, theo hướng đi của Google, chính thức hỗ trợ Android, iOS và Web. Thực tế, macOS cũng được hỗ trợ vì macOS chia sẻ nhiều dòng code với iOS, song vì Google 4 do an KHÓA LUẬN TỐT NGHIỆP và Firebase muốn sử dụng web cho ứng dụng desktop thay vì native, nên có khá ít tài liệu chính thức nói về Firebase cho macOS, cũng như các thư viện cho macOS có thể kém chức năng và không ổn định lắm. Dữ liệu thời gian thực – Firebase Realtime Database Bạn đăng ký một tài khoản trên firebase, tạo một ứng dụng và bạn đã có một cơ sở dữ liệu thời gian thực. Dữ liệu sẽ được cung cấp cho bạn dưới dạng JSON và luôn đồng bộ thời gian thực đến mọi kết nối client.

Với các ứng dụng đa nền tảng tất cả các client sẽ đều sử dụng chung một database và luôn được tự động cập nhật dữ liệu mới nhất. Cấu trúc dữ liệu của firebase Tất cả dữ liệu được truyền qua một kết nối an toàn SSL với một chứng nhận 2048- bit. Dữ liệu luôn được lưu trữ trước ở local mỗi khi có sự thay đổi nào sẽ được tự động cập nhật lên server của Firebase và ngược lại khi dữ liệu ở local là cũ hơn với server nó cũng sẽ được tự động cập nhật để dữ liệu luôn là mới nhất nên nếu mất kết nối mạng dữ liệu local sẽ được sử dụng để thay thế. Xác thực người dùng - Firebase Authentication Sử dụng Xác thực Firebase giúp việc xây dựng hệ thống xác thực an toàn dễ dàng hơn, đồng thời cải thiện sign-in và onboarding experience cho người dùng cuối.

Firebase 5 do an KHÓA LUẬN TỐT NGHIỆP Authentication được tạo bởi cùng một người trong Google Sign-in, Smart Lock, và Chrome Password Manager. Firebase đã xây dựng chức năng cho việc xác thực người dùng với Email, Facebook, Twitter, GitHub, Google và xác thực nặc danh. Nó giúp bạn nhiều trong việc xác thực người dùng. Firebase Storage Firebase Storage là dịch vụ được xây dựng cho mục đích lưu trữ và quản lý các nội dung mà người dùng ứng dụng tạo ra như ảnh, videos hay dữ liệu dạng file.

Firebase Storage cung cấp các API cho việc upload và download các file từ app của bạn một cách bảo mật và bạn không cần quan tâm đến chất lượng đường truyền mạng. Firebase Storage được xây dựng trên nền tảng Google Cloud Platform nên có nhiều lợi thế. Firebase Storage sử dụng hệ thống tệp/thư mục đơn giản để cấu trúc dữ liệu của nó. Firebase Cloud Messaging (FCM) Firebase Cloud Messaging (FCM) cung cấp kết nối đáng tin cậy và tiết kiệm pin giữa máy chủ và thiết bị cho phép bạn gửi và nhận tin nhắn cũng như thông báo trên iOS, Android và web miễn phí.

Bạn có thể gửi tin nhắn thông báo (giới hạn 2KB) và tin nhắn dữ liệu (giới hạn 4KB). Sử dụng FCM, bạn có thể dễ dàng nhắm mục tiêu các thư bằng cách sử dụng các phân đoạn được xác định trước hoặc tạo các phân đoạn của riêng bạn bằng cách sử dụng nhân khẩu học và hành vi.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Bài viết "Ứng Dụng Bán Gạo Trên Nền Tảng Android Từ Đồ Án HCMUTE" giới thiệu về một ứng dụng di động được phát triển nhằm phục vụ nhu cầu mua bán gạo trực tuyến. Ứng dụng này không chỉ giúp người tiêu dùng dễ dàng tìm kiếm và đặt hàng gạo mà còn cung cấp thông tin chi tiết về các loại gạo, giá cả và nhà cung cấp. Một trong những lợi ích nổi bật của ứng dụng là tính tiện lợi và khả năng kết nối trực tiếp giữa người bán và người mua, từ đó nâng cao trải nghiệm mua sắm.

Nếu bạn quan tâm đến các ứng dụng di động khác trong lĩnh vực thương mại, bạn có thể tìm hiểu thêm về ứng dụng quản lý mua bán gas trên iOS, nơi bạn sẽ thấy cách thức phát triển ứng dụng tương tự nhưng cho một sản phẩm khác. Ngoài ra, bài viết về ứng dụng di động đa nền tảng bán sách cũng sẽ mang đến cho bạn cái nhìn sâu sắc về việc phát triển ứng dụng trong lĩnh vực thương mại điện tử. Cuối cùng, bạn có thể tham khảo ứng dụng đặt vé online để thấy được sự đa dạng trong các ứng dụng thương mại điện tử hiện nay. Những liên kết này sẽ giúp bạn mở rộng kiến thức và khám phá thêm nhiều khía cạnh thú vị trong lĩnh vực phát triển ứng dụng.