Các ứng dụng nghe nhạc trực tuyến đãtrở thành một phần không thể thiếu trong cuộc sống hàng ngày của mọi người,cung cấp cho họ khả năng truy cập vào một thư viện âm nhạc khổng lồ từ mọi
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
VIỆT – HÀN KHOA KHOA HỌC MÁY TÍNH
Trang 2ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
VIỆT – HÀN KHOA KHOA HỌC MÁY TÍNH
Trang 3NHẬN XÉT
(Của giảng viên hướng dẫn)
Chữ ký của giảng viên hướng dẫn
Trang 4LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đối với các thầy cô của trường Đại học Công nghệ thông tin và Truyền thông Việt – Hàn, đặc biệt là các thầy cô trong khoa Khoa học máy tính của trường đã tạo điều kiện cho em thực hiện đồ án Em cũng xin chân thành cảm ơn cô THS HÀ THỊ MINH PHƯƠNG đãnhiệt tình hướng dẫn em hoàn thành tốt đồ án này
Trong quá trình làm đồ án, khó tránh khỏi sai sót, rất mong các thầy cô bỏ qua.Đồng thời do trình độ lý luận cũng như kinh nghiệm thực tiễn còn hạn chế nên bài báo cáo không thể tránh khỏi những thiếu sót, em rất mong sẽ nhận được ý kiến đóng góp của thầy cô để chúng em học thêm được nhiều kinh nghiệm và sẽ hoàn thành tốt hơn các bài báo cáo khác trong những năm tới
Em xin chân thành cảm ơn!
Sinh Viên
Võ Bình Minh
Trang 5MỞ ĐẦU
1 Giới thiệu
Trong kỷ nguyên số hiện nay, sự phát triển của công nghệ đã biến cách conngười tiếp cận âm nhạc và tương tác với nó Các ứng dụng nghe nhạc trực tuyến đãtrở thành một phần không thể thiếu trong cuộc sống hàng ngày của mọi người,cung cấp cho họ khả năng truy cập vào một thư viện âm nhạc khổng lồ từ mọi nơitrên thế giới
Ứng dụng nghe nhạc trực tuyến không chỉ đơn thuần là một nền tảng cho việcthưởng thức âm nhạc, mà còn có vai trò quan trọng trong nhiều lĩnh vực khác nhaunhư giải trí, tinh thần, và thậm chí làm việc
Truy cập vào thư viện âm nhạc rộng lớn:
Ứng dụng nghe nhạc trực tuyến cho phép người dùng truy cập vào hàng triệubài hát từ các thể loại khác nhau như pop, rock, hip-hop, nhạc điện tử và nhiều thểloại khác Người dùng có thể tìm kiếm và thưởng thức âm nhạc mọi lúc, mọi nơichỉ với một thiết bị kết nối Internet
Tính tiện lợi và linh hoạt:
Nghe nhạc trực tuyến giúp người dùng thoải mái lựa chọn bài hát yêu thích vàtạo danh sách phát cá nhân theo sở thích của mình Ứng dụng cũng cung cấp cácchức năng như tạo playlist, chế độ phát ngẫu nhiên, và khám phá bài hát mới dựatrên sở thích cá nhân, giúp người dùng tận hưởng âm nhạc theo cách riêng củamình
Giao diện tương tác và tùy chỉnh:
Ứng dụng nghe nhạc trực tuyến thường có giao diện thân thiện, dễ sử dụng vàtùy chỉnh Người dùng có thể tạo danh sách phát, lưu trữ yêu thích và tương tác vớibài hát thông qua các chức năng như thích, chia sẻ và bình luận Một số ứng dụngcòn cung cấp tính năng tùy chỉnh trải nghiệm nghe nhạc theo sở thích cá nhân củangười dùng
Trang 6 Khám phá âm nhạc mới:
Ứng dụng nghe nhạc trực tuyến cung cấp tính năng khám phá âm nhạc mớidựa trên sở thích cá nhân của người dùng Người dùng có thể khám phá các bài hát,nghệ sĩ và danh sách phát mới thông qua gợi ý cá nhân, bảng xếp hạng, và cácplaylist được tạo bởi cộng đồng người dùng khác
Đa nền tảng và đồng bộ hóa:
Các ứng dụng nghe nhạc trực tuyến thường có sẵn trên nhiều nền tảng, baogồm điện thoại di động, máy tính bảng và máy tính để bàn Người dùng có thể truycập vào tài khoản của mình và đồng bộ hóa danh sách phát, thông tin nghe nhạctrên các thiết bị khác nhau, cho phép họ tiếp tục thưởng thức âm nhạc mà khônggiới hạn bởi thiết bị
Chia sẻ và kết nối xã hội:
Nhiều ứng dụng nghe nhạc trực tuyến tích hợp tính năng chia sẻ và kết nối xãhội Người dùng có thể chia sẻ bài hát, playlist và sở thích âm nhạc của mình vớibạn bè trên các mạng xã hội, tạo ra một sự tương tác và thảo luận về âm nhạc
Dịch vụ trả phí và miễn phí:
Các ứng dụng nghe nhạc trực tuyến thường có mô hình kinh doanh trả phíhoặc miễn phí Người dùng có thể truy cập miễn phí với giới hạn chức năng vàquảng cáo, trong khi việc đăng ký dịch vụ trả phí mang lại trải nghiệm nghe nhạckhông giới hạn, không có quảng cáo và các tính năng bổ sung như tải xuốngoffline
Nhìn chung, ứng dụng nghe nhạc trực tuyến đã trở thành một phần không thểthiếu trong cuộc sống hiện đại, mang lại nhiều lợi ích và thay đổi cách chúng ta tậnhưởng và tương tác với âm nhạc Xây dựng một ứng dụng nghe nhạc không chỉgiúp đáp ứng nhu cầu giải trí âm nhạc của con người, mà còn mở ra nhiều cơ hộiphát triển mới trong nhiều lĩnh vực khác nhau
Trang 7Lý do chọn đề tài?
⮚ Nhu cầu ngày càng tăng:
- Sự phát triển của công nghệ và internet đã làm thay đổi cách con người
giao tiếp và kết nối với nhau Ngày nay, âm nhạc đã trở thành một phần khôngthể thiếu trong cuộc sống hàng ngày của nhiều người
- Nhu cầu về các dịch vụ nghe nhạc trực tuyến không ngừng tăng cao, với
mong muốn trải nghiệm người dùng tốt hơn và khám phá âm nhạc mới mẻ
⮚ Sự đa dạng về người dùng:
- Mỗi người có sở thích âm nhạc riêng biệt, và một ứng dụng nghe nhạc trực
tuyến có thể thu hút một loạt đối tượng người dùng từ mọi lứa tuổi và phongcách âm nhạc
- Một ứng dụng nghe nhạc có thể cung cấp các tính năng đa dạng để đáp ứng
nhu cầu thưởng thức âm nhạc và giải trí của mọi người dùng
⮚ Ưu tiên vấn đề kết nối giao tiếp:
- Xây dựng một ứng dụng nghe nhạc trực tuyến không chỉ là việc cung cấp
âm nhạc mà còn là việc tạo ra một môi trường kết nối và giao tiếp giữa cácngười dùng
- Việc tạo ra một không gian an toàn và tích cực cho người dùng thể hiện
tinh thần kết nối và chia sẻ trong cộng đồng âm nhạc
Tiềm năng kinh doanh:
- Ứng dụng mạng xã hội có tiềm năng thu hút sự quan tâm của các nhà quảng
cáo và đối tác kinh doanh, mở ra cơ hội kinh doanh và hợp tác đa dạng
- Các tính năng quảng cáo, kinh doanh trực tuyến và các dịch vụ cao cấp có
thể tạo ra nguồn doanh thu ổn định và bền vững
Trang 8Kết luận, việc chọn đề tài xây dựng ứng dụng nghe nhạc trực tuyến không chỉ
đáp ứng nhu cầu thị trường mà còn mang lại nhiều giá trị thực tế và đóng góp tíchcực vào sự phát triển của cộng đồng Đây là một dự án có tiềm năng lớn, giúp tăngcường kết nối xã hội, thúc đẩy sự giao tiếp và hợp tác, và mở ra nhiều cơ hội pháttriển mới trong kỷ nguyên số
2 Mục tiêu của đề tài
✔ Ưu tiên bộ giao diện của ứng dụng được thiết kế theo phong cách đơn giảnkết hợp với màu sắc nhẹ nhàng, giúp người dùng không cảm thấy rối mắtkhi truy cập vào ứng dụng
✔ Đầy đủ tính năng, dễ sử dụng, mang lại cho người dùng trải nghiệm tốtnhất
3 Phương pháp và kế hoạch thực hiện
3.1 Phương pháp
- Tìm hiểu các nội dung mà một ứng dụng nghe nhạc trực tuyến cần có.
- Xem và nghiên cứu các website có nội dung tương tự.
- Sử dụng môi trường phát triển tích hợp Android Studio (Integrated Development
Environment - IDE) được Google cung cấp dành riêng cho việc phát triển ứng dụngAndroid, sử dụng ngôn ngữ Kotlin, ngôn ngữ thiết kế giao diện XML để xây dựngứng dụng
Trang 10MỤC LỤC
MỞ ĐẦU 1
1 Giới thiệu 1
2 Mục tiêu của đề tài 4
3 Phương pháp và kế hoạch thực hiện 4
DANH MỤC HÌNH ẢNH 8
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 11
1.1 Cơ sở lý luận và thực tiễn 11
1.2 Hướng tiếp cận của đề tài 14
1.3 Giới thiệu đồ án 15
1.4 Ý nghĩa lý luận và ý nghĩa thực tiễn của đề tài 15
CHƯƠNG 2: KHẢO SÁT, XÁC ĐỊNH YÊU CẦU 17
2.1 Khảo sát yêu cầu ứng dụng 17
2.2 Nội dung khảo sát 17
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 19
3.1 Phân tích yêu cầu đề tài 19
3.3 Mô hình hóa hành vi 21
CHƯƠNG 4: XÂY DỰNG WEBSITE 29
4.1 Một số hình ảnh về website 29
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 33
1 Kết quả đạt được 33
2 Hướng nghiên cứu 33
Trang 11DANH MỤC HÌNH ẢNH
Hình 1 - Logo Kotlin 12
Hình 2 - Logo Android Studio 13
Hình 3 - Logo XML 13
Hình 4 - Logo Firebase 14
Hình 5 - Biểu đồ use case tổng quát 20
Hình 6 - Biểu đồ lớp 20
Hình 7 - Biểu đồ hoạt động đăng ký 21
Hình 8 - Biểu đồ hoạt động đăng nhập 22
Hình 9 - Biểu đồ hoạt động tìm kiếm 22
Hình 10 - Biểu đồ hoạt động phát nhạc 23
Hình 11 - Biểu đồ hoạt động tạo playlist 23
Hình 12 - Biểu đồ hoạt động đăng xuất 24
Hình 13 - Biểu đồ hoạt động thêm bài hát vào playlist 24
Hình 14 - Biểu đồ tuần tự đăng ký 25
Hình 15 - Biểu đồ tuần tự đăng nhập 26
Hình 16 - Biểu đồ tuần tự đăng xuất 27
Hình 17 - Biểu đồ tuần tự phát nhạc 27
Trang 12Hình 18 - Biểu đồ tuần tự thêm nhạc vào playlist 28
Hình 19 - Biểu đồ tuần tự tìm kiếm 28
Hình 20 - Giao diện đăng nhập 29
Hình 21 - Giao diện đăng ký 29
Hình 22 - Giao diện bảng tin 30
Hình 23 - Giao diện story 30
Hình 24 - Giao diện bình luận 31
Hình 25 - Giao diện tinh nhắn 31
Hình 26 - Giao diện thêm bạn 32
Hình 27 - Giao diện hồ sơ người dùng 32
Trang 13
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1 Cơ sở lý luận và thực tiễn
1.1.1 Ứng dụng là gì?
- Ứng dụng di động, hay ứng dụng web di động, là các phần mềm được thiết
kế và phát triển để chạy trên các thiết bị di động như điện thoại thông minh và máytính bảng Các ứng dụng này có thể được tải xuống và cài đặt từ các cửa hàng ứngdụng như Google Play Store hoặc App Store của Apple Ứng dụng thường đượcviết bằng các ngôn ngữ lập trình như Kotlin hoặc Java cho Android và Swift hoặcObjective-C cho iOS
- Đối với các ứng dụng web di động, chúng thường được truy cập thông qua
trình duyệt web trên thiết bị di động và thường được tối ưu hóa để hiển thị và tươngtác trên màn hình nhỏ
1.1.2 Lợi ích của ứng dụng
- Tiện ích và trải nghiệm người dùng: Cung cấp các tính năng và dịch vụ tiện
ích trên các thiết bị di động, tạo ra trải nghiệm tốt cho người dùng
- Tiếp cận và mở rộng đối tượng khách hàng: Cho phép doanh nghiệp tiếp cận
và tương tác với một lượng lớn người dùng trên các thiết bị di động
- Quảng bá và tiếp thị: Là một công cụ quan trọng để quảng bá và tiếp thị sản phẩm, dịch vụ của doanh nghiệp trên nền tảng di động
- Tăng tính tương tác: Tạo điều kiện cho sự tương tác và giao tiếp giữa doanh nghiệp và khách hàng thông qua các tính năng như thông báo đẩy và chat trực tuyến
- Nền tảng cho sản phẩm và dịch vụ: Dễ dàng truy cập và sử dụng để giới thiệu
và bán hàng cho sản phẩm và dịch vụ của doanh nghiệp
- Xây dựng thương hiệu: Góp phần xây dựng và củng cố thương hiệu của doanh nghiệp thông qua trải nghiệm và tiện ích người dùng
- Thu thập dữ liệu và phản hồi: Thu thập thông tin và phản hồi từ người dùng
để cải thiện dịch vụ và tăng cường tương tác
16
Trang 14- Tăng cường năng lực cạnh tranh: Tạo lợi thế cạnh tranh thông qua việc cung cấp các dịch vụ và trải nghiệm người dùng tốt hơn so với đối thủ.
1.1.3 Tổng quan về Kotlin
- Kotlin là một ngôn ngữ lập trình đa năng, tương thích với Java, an toàn, dễ đọc, hỗ trợ đa nền tảng và có cộng đồng lớn mạnh Được phát triển bởi JetBrains, Kotlin được sử dụng rộng rãi cho phát triển ứng dụng di động, máy tính và web
Hình 1 - Logo Kotlin
1.1.4 Tổng quan Android Studio
- Android Studio là IDE chính thức cho phát triển ứng dụng Android, hỗ trợJava, Kotlin và C++ Các tính năng chính bao gồm: trình chỉnh sửa mã thông minh,trình giả lập thiết bị ảo, Công cụ kéo thả thiết kế giao diện, hệ thống xây dựngGradle, công cụ kiểm tra và gỡ lỗi mạnh mẽ
- Hỗ trợ đa nền tảng (Windows, macOS, Linux) và tích hợp dễ dàng vớiFirebase và các thư viện phổ biến
17
Trang 15Hình 2 - Logo Android Studio
1.1.5 Tổng quan về XML trong Android Studio
- XML trong Android Studio được sử dụng để:
Thiết kế giao diện người dùng: Định nghĩa bố cục (layouts) và các thành phần UI
Quản lý tài nguyên: Định nghĩa chuỗi (strings), màu sắc (colors), phong cách (styles) và chủ đề (themes)
Cấu hình ứng dụng: Chứa thông tin cấu hình trong
AndroidManifest.xml
- XML giúp tách biệt giao diện và logic, dễ quản lý và tái sử dụng
Hình 3 - Logo XML
18
Trang 161.1.6 Giới thiệu Firebase
- Firebase là nền tảng phát triển ứng dụng của Google, cung cấp các dịch vụ chính:
Realtime Database và Cloud Firestore: Lưu trữ và đồng bộ dữ liệu theo thời gian thực
Authentication: Xác thực người dùng với nhiều phương thức đăng nhập
Cloud Storage: Lưu trữ và chia sẻ nội dung người dùng
Hosting: Lưu trữ và phân phối nội dung web tĩnh
Cloud Functions: Chạy mã back-end không cần quản lý máy chủ
Analytics: Phân tích hành vi người dùng và theo dõi sự kiện
Crashlytics: Báo cáo và theo dõi sự cố
Remote Config: Thay đổi hành vi và giao diện ứng dụng từ xa
- Firebase hỗ trợ đa nền tảng, tích hợp dễ dàng, bảo mật mạnh mẽ và tài liệu phong phú, giúp phát triển và quản lý ứng dụng hiệu quả
Hình 4 - Logo Firebase
1.2.Hướng tiếp cận của đề tài
Ứng dụng tạo ra với mục đích hướng đến người dùng với chức năng và đặcbiệt phải mô tả đầy đủ thông tin mà người dùng cần đến Xây dựng ứng dụng
19
Trang 17không thể qua loa mà phải đặc tả toàn bộ thông tin như trong quá trình lưu trữtruyền thống của người dùng.
- Firebase: Sử dụng Firebase để quản lý cơ sở dữ liệu, xác thực người dùng, lưu trữ tệp và phân tích hành vi người dùng Firebase cung cấp các dịch vụ đám mây mạnh mẽ và dễ sử dụng cho việc phát triển ứng dụng
- Android Studio: Sử dụng Android Studio làm môi trường phát triển chính cho ứng dụng Android của bạn Android Studio cung cấp các công cụ mạnh mẽ và
hỗ trợ toàn diện cho việc phát triển, kiểm thử và triển khai ứng dụng
- XML trong Android Studio: Sử dụng XML để thiết kế giao diện người dùng của ứng dụng XML cho phép bạn định nghĩa bố cục và các thành phần giao diện như TextView, Button và RecyclerView
1.4.Ý nghĩa lý luận và ý nghĩa thực tiễn của đề tài
Ý nghĩa lý luận:
- Nghiên cứu và phát triển công nghệ: Việc phát triển một ứng dụng nghe nhạctrực tuyến đòi hỏi sự tích hợp của nhiều công nghệ như phân tích dữ liệu, xử lý âmthanh, thiết kế giao diện người dùng, và phát triển ứng dụng di động Quá trình nàycung cấp cơ hội để nghiên cứu và áp dụng những công nghệ mới nhất vào thực tiễn
- Tạo ra một hệ sinh thái âm nhạc: Việc xây dựng một ứng dụng nghe nhạctrực tuyến không chỉ là việc tạo ra một ứng dụng đơn lẻ mà còn là việc xây dựngmột hệ sinh thái âm nhạc với các yếu tố như cơ sở dữ liệu âm nhạc, tính năng tương
20
Trang 18tác, và cộng đồng người dùng Điều này đòi hỏi nghiên cứu sâu rộng về ngành côngnghiệp âm nhạc và cách thức tương tác của người dùng.
- Phát triển kỹ năng công nghệ: Việc tham gia vào dự án phát triển ứng dụngnghe nhạc trực tuyến cung cấp cơ hội cho các nhà phát triển để phát triển và cảithiện kỹ năng công nghệ của họ, bao gồm lập trình, thiết kế giao diện, quản lý dự
án và kiến thức về ngành công nghiệp
Ý nghĩa thực tiễn:
- Cung cấp giải pháp cho nhu cầu người dùng: Một ứng dụng nghe nhạc trựctuyến cung cấp một giải pháp hiệu quả cho nhu cầu thưởng thức âm nhạc của ngườidùng trong thời đại số hóa Người dùng có thể truy cập vào một thư viện âm nhạclớn và đa dạng từ bất kỳ nơi nào và bất kỳ thiết bị nào
- Tạo ra một cộng đồng âm nhạc trực tuyến: Ứng dụng nghe nhạc trực tuyến
có thể tạo ra một môi trường để người dùng chia sẻ, phản hồi và tương tác với nhau
về âm nhạc Điều này giúp tạo ra một cộng đồng đam mê âm nhạc, nơi mà ngườidùng có thể kết nối và tương tác với nhau
- Thử nghiệm và áp dụng kiến thức: Đề tài cung cấp cơ hội thực tế để áp dụng
và thử nghiệm kiến thức đã học, từ việc phát triển ứng dụng đến quản lý và tối ưuhóa sản phẩm
21
Trang 19CHƯƠNG 2: KHẢO SÁT, XÁC ĐỊNH YÊU CẦU
2.1 Khảo sát yêu cầu ứng dụng
2.1.1 Mục đích:
Giai đoạn này nhằm thu thập thông tin và tài liệu liên quan đến chức năng vàgiao diện của ứng dụng nghe nhạc trực tuyến Mục tiêu là xác định các yêu cầu cụthể trước khi bắt đầu quá trình phát triển, từ đó đảm bảo rằng ứng dụng sẽ đáp ứngđược nhu cầu của người dùng một cách tốt nhất
2.1.2 Phạm vi:
Ứng dụng mạng xã hội sẽ là một nền tảng kết nối và tương tác cho ngườidùng Nó sẽ cung cấp các tính năng như nghe nhạc, phát nhạc từ thư viện, tạo vàquản lý mối danh sách nhạc, tương tác với bài hát,tìm kiếm bài hát và nghệ sĩ yêuthích
2.2 Nội dung khảo sát
2.2.1 Hạ tầng các trang web cung cấp thông tin về cho thuê chỗ ở hiện nay:
Hiện nay, có nhiều ứng dụng nghe nhạc phổ biến như Zing Mp3, Nhaccuatui,Spotify, SoundCloud, và Apple Music Mỗi ứng dụng có những tính năng đặc trưngnhư chia sẻ phát nhạc, thêm danh sách nhạc và quản lý, tìm kiếm bài hát, nghệ sĩyêu thích