Báo cáo đồ án: Xây dựng trình phát nhạc (Audio Player) trên Android

Đồ án tốt nghiệp xây dựng trình phát nhạc trên Android. Báo cáo chi tiết các chức năng, thiết kế giao diện và hệ thống cho ứng dụng nghe nhạc.

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2024

146
2
0

Phí lưu trữ

35 Point

Tóm tắt

I. Tổng quan đồ án xây dựng ứng dụng nghe nhạc trên Android

Việc thực hiện đồ án xây dựng ứng dụng nghe nhạc trên Android là một chủ đề mang tính thực tiễn cao, đáp ứng nhu cầu giải trí ngày càng tăng của người dùng di động. Đồ án không chỉ là một bài tập kỹ thuật mà còn là cơ hội để áp dụng kiến thức về lập trình di động vào một sản phẩm hoàn chỉnh. Thị trường ứng dụng di động hiện nay có sự thống trị của hệ điều hành Android, làm cho việc phát triển trên nền tảng này trở thành một kỹ năng quan trọng. Nhu cầu về các ứng dụng nghe nhạc chất lượng cao, cung cấp trải nghiệm người dùng liền mạch và các tính năng cá nhân hóa luôn ở mức cao. Một đồ án tốt nghiệp android thành công trong lĩnh vực này đòi hỏi sự kết hợp giữa thiết kế giao diện, xử lý âm thanh và quản lý tài nguyên hiệu quả. Tài liệu gốc của nhóm sinh viên Trần Minh Khải, Trần Mạnh Huy và Nguyễn Quốc Đức Tín nhấn mạnh mục tiêu chính là "xây dựng một ứng dụng nghe nhạc trực tuyến tiện lợi và hiện đại có tên THK Music". Ứng dụng này hướng tới việc nâng cao trải nghiệm người dùng thông qua cá nhân hóa và các tính năng nâng cao. Đây là một mục tiêu tham vọng, phản ánh tiềm năng sáng tạo trong lĩnh vực này. Dự án này không chỉ dừng lại ở việc phát lại âm thanh mà còn tích hợp các tính năng xã hội như nghe nhạc chung và kênh do người dùng tạo. Điều này cho thấy xu hướng biến các ứng dụng tiện ích thành nền tảng cộng đồng. Việc lựa chọn đề tài này được thúc đẩy bởi sự phù hợp về công nghệ, giá trị giáo dục, nhu cầu thị trường và tiềm năng đổi mới. Đây là một cơ hội tuyệt vời để tham khảo hướng dẫn làm app nghe nhạc một cách bài bản.

1.1. Lý do và sự cần thiết của ứng dụng nghe nhạc di động

Sự phát triển nhanh chóng của điện thoại thông minh và hệ điều hành Android đã thay đổi cách con người tương tác với nội dung đa phương tiện. Trong số đó, các ứng dụng nghe nhạc chiếm một vị trí quan trọng. Nhu cầu giải trí mọi lúc mọi nơi thúc đẩy sự cần thiết của một trình phát âm thanh mạnh mẽ. Tài liệu nghiên cứu gốc chỉ ra "sự phổ biến nhanh chóng của điện thoại thông minh" là yếu tố cốt lõi. Điều này tạo ra một thị trường rộng lớn cho các nhà phát triển. Một đồ án môn học về chủ đề này giúp sinh viên tiếp cận với các kỹ năng thực tế, từ thiết kế giao diện nghe nhạc UI/UX đến quản lý dữ liệu và tối ưu hóa hiệu năng. Nhu cầu của người dùng không chỉ dừng lại ở việc phát nhạc cơ bản mà còn mong muốn các tính năng cao cấp như tạo playlist, đề xuất bài hát thông minh và nghe nhạc ngoại tuyến.

1.2. Mục tiêu chính của đồ án phát triển ứng dụng THK Music

Mục tiêu cốt lõi của đồ án là phát triển ứng dụng THK Music với các tính năng hiện đại. Theo tài liệu, mục tiêu bao gồm: cung cấp một thư viện âm nhạc phong phú, tính năng nghe nhạc chung theo thời gian thực, và cho phép người dùng tự tạo kênh nhạc riêng. Những mục tiêu này không chỉ tập trung vào chức năng kỹ thuật mà còn hướng đến việc xây dựng một cộng đồng người dùng tương tác. Việc tích hợp thương mại điện tử để người dùng nâng cấp tài khoản premium cũng là một phần quan trọng. Điều này cho thấy hướng đi của dự án không chỉ là một sản phẩm học thuật mà còn có tiềm năng thương mại hóa. Việc đạt được các mục tiêu này sẽ tạo ra một sản phẩm cạnh tranh, là nguồn tham khảo đồ án giá trị cho các sinh viên khóa sau.

II. Phân tích thách thức khi làm đồ án app nghe nhạc Android

Quá trình xây dựng ứng dụng nghe nhạc trên Android đối mặt với nhiều thách thức cả về kỹ thuật và trải nghiệm người dùng. Việc phân tích các ứng dụng hiện có trên thị trường như NCT (Nhaccuatui) và Zing MP3 cho thấy những điểm yếu cần khắc phục. Theo tài liệu gốc, một trong những nhược điểm của các ứng dụng này là "giao diện người dùng bị một số người dùng cho là lộn xộn" và "phiên bản miễn phí chứa nhiều quảng cáo làm gián đoạn trải nghiệm người dùng". Đây là thách thức lớn về thiết kế giao diện nghe nhạc UI/UX. Một thách thức kỹ thuật quan trọng khác là quản lý việc phát nhạc nền. Ứng dụng phải đảm bảo nhạc tiếp tục phát mượt mà ngay cả khi người dùng chuyển sang ứng dụng khác hoặc tắt màn hình. Điều này đòi hỏi kiến thức sâu về Service trong Android và quản lý vòng đời của ứng dụng. Việc tối ưu hóa tài nguyên hệ thống như pin và CPU cũng là một bài toán khó. Ngoài ra, việc xử lý và lưu trữ dữ liệu người dùng, chẳng hạn như quản lý playlist và bài hát đã tải, đòi hỏi một hệ thống cơ sở dữ liệu hiệu quả, có thể là SQLite cho lưu trữ cục bộ hoặc Firebase Realtime Database cho đồng bộ hóa đám mây. Việc tích hợp API nhạc từ bên thứ ba cũng tiềm ẩn các vấn đề về tương thích và hiệu suất. Một báo cáo đồ án ứng dụng nghe nhạc hoàn chỉnh phải trình bày rõ ràng các giải pháp cho những thách thức này, từ việc lựa chọn công nghệ phù hợp đến các chiến lược tối ưu hóa.

2.1. Vấn đề về tối ưu hóa giao diện và trải nghiệm người dùng

Trải nghiệm người dùng (UX) là yếu tố quyết định sự thành công của một ứng dụng nghe nhạc. Một giao diện lộn xộn, khó điều hướng sẽ nhanh chóng làm người dùng nản lòng. Thách thức ở đây là thiết kế một giao diện vừa thẩm mỹ, vừa trực quan. Các nhà phát triển cần cân bằng giữa việc hiển thị đầy đủ thông tin (tên bài hát, nghệ sĩ, album) và giữ cho màn hình gọn gàng. Hơn nữa, việc đảm bảo ứng dụng hoạt động mượt mà trên nhiều thiết bị Android với kích thước màn hình và cấu hình khác nhau là một công việc phức tạp. Quá trình thiết kế UI trên Figma, như được đề cập trong tài liệu, là bước đầu tiên quan trọng để tạo ra các prototype và thử nghiệm trước khi viết code.

2.2. Khó khăn kỹ thuật trong việc phát nhạc nền và quản lý dữ liệu

Một trong những tính năng cốt lõi của app nghe nhạc là khả năng phát nhạc nền. Việc triển khai tính năng này đòi hỏi sự hiểu biết sâu sắc về các thành phần của Android như Services, BroadcastReceiver và quản lý Wake Locks. Nếu không được xử lý đúng cách, ứng dụng có thể bị hệ điều hành dừng đột ngột hoặc tiêu thụ quá nhiều pin. Về quản lý dữ liệu, việc lưu trữ danh sách bài hát, playlist của người dùng và trạng thái phát nhạc cần một cấu trúc dữ liệu hiệu quả. Lựa chọn giữa cơ sở dữ liệu cục bộ như SQLite và giải pháp đám mây như Firebase phụ thuộc vào yêu cầu của ứng dụng về khả năng truy cập ngoại tuyến và đồng bộ hóa đa thiết bị. Đây là những quyết định kỹ thuật quan trọng ảnh hưởng trực tiếp đến hiệu năng sản phẩm.

III. Phương pháp xây dựng Backend cho đồ án app nghe nhạc Android

Để xây dựng ứng dụng nghe nhạc trên Android với các tính năng động và tương tác, một hệ thống backend vững chắc là không thể thiếu. Đồ án THK Music đã lựa chọn một bộ công nghệ hiện đại để giải quyết vấn đề này. Theo tài liệu, phía server sử dụng Node.js và Express.js. Node.js được chọn vì "hiệu năng cao nhờ kiến trúc I/O không chặn và hướng sự kiện". Express.js, một framework gọn nhẹ của Node.js, được dùng để xây dựng các RESTful API, phục vụ cho việc quản lý bài hát và người dùng. Đây là một lựa chọn phổ biến cho các đồ án tốt nghiệp android yêu cầu hiệu suất cao. Để xử lý các tính năng thời gian thực như nghe nhạc chung, dự án đã tích hợp Socket.io. Thư viện này đơn giản hóa việc thiết lập kết nối WebSocket, cho phép truyền dữ liệu hai chiều ngay lập tức. Về cơ sở dữ liệu và xác thực, Firebase Realtime Database và Firebase Authentication là những lựa chọn chiến lược. Firebase cung cấp giải pháp "Backend as a Service" (BaaS), giúp giảm tải công việc quản lý hạ tầng cho lập trình viên. Firebase Admin SDK được sử dụng ở phía server để quản lý dữ liệu và người dùng một cách an toàn. Việc tích hợp các API nhạc cũng được xử lý ở backend để quản lý và cung cấp dữ liệu một cách nhất quán cho client Android. Toàn bộ kiến trúc này tạo thành một hệ thống mạnh mẽ, linh hoạt, đủ sức đáp ứng các yêu cầu phức tạp của một ứng dụng nghe nhạc hiện đại.

3.1. Sử dụng Node.js Express và Socket.io cho tính năng real time

Việc lựa chọn Node.js và Express.js làm nền tảng cho backend mang lại nhiều lợi thế về tốc độ và khả năng mở rộng. Kiến trúc bất đồng bộ của Node.js rất phù hợp để xử lý nhiều kết nối đồng thời, một yêu cầu cơ bản của ứng dụng streaming. Đặc biệt, để hiện thực hóa tính năng nghe nhạc chung, Socket.io đã được sử dụng. Thư viện này cho phép client và server giao tiếp tức thì, giúp đồng bộ hóa trạng thái phát nhạc giữa nhiều người dùng trong cùng một "phòng nghe nhạc". Cách tiếp cận này tạo ra một trải nghiệm xã hội liền mạch và hấp dẫn, một điểm khác biệt so với các ứng dụng truyền thống.

3.2. Tích hợp Firebase cho xác thực và quản lý dữ liệu đám mây

Firebase là một công cụ mạnh mẽ trong hệ sinh thái Google, được sử dụng rộng rãi trong lập trình di động. Trong đồ án này, Firebase Authentication được dùng để xử lý việc đăng nhập và quản lý người dùng một cách an toàn, hỗ trợ nhiều phương thức xác thực. Firebase Realtime Database hoặc Firestore được dùng để lưu trữ dữ liệu như thông tin người dùng, playlist, và các dữ liệu cần đồng bộ hóa nhanh chóng. Ngoài ra, Firebase Cloud Messaging (FCM) được tích hợp để gửi thông báo đẩy, một công cụ hiệu quả để giữ chân người dùng. Việc sử dụng Firebase giúp các nhà phát triển tập trung vào logic của ứng dụng thay vì phải xây dựng lại các tính năng backend cơ bản từ đầu.

IV. Hướng dẫn làm app nghe nhạc Android với Java và Kotlin

Phía client của đồ án xây dựng ứng dụng nghe nhạc trên Android là nơi trải nghiệm người dùng được định hình. Việc lựa chọn công nghệ và kiến trúc phù hợp là yếu tố quyết định. Đồ án này có thể được phát triển bằng Java for Android hoặc Kotlin, với Kotlin đang là ngôn ngữ được Google khuyến nghị vì cú pháp ngắn gọn và an toàn hơn. Môi trường phát triển chính là Android Studio. Một trong những quyết định kỹ thuật quan trọng nhất là chọn thư viện phát media. Tài liệu gốc đề cập đến ExoPlayer, một thư viện mã nguồn mở của Google. So với MediaPlayer tích hợp sẵn, ExoPlayer cung cấp sự linh hoạt vượt trội, hỗ trợ nhiều định dạng media, streaming thích ứng (adaptive streaming), và quản lý DRM. Đây là lựa chọn lý tưởng cho một ứng dụng nghe nhạc hiện đại. Để giao tiếp với backend, thư viện Retrofit được sử dụng để thực hiện các cuộc gọi HTTP một cách đơn giản và hiệu quả. Retrofit kết hợp tốt với Gson để tự động chuyển đổi dữ liệu JSON từ API thành các đối tượng Java/Kotlin. Về mặt kiến trúc, việc áp dụng các mô hình như MVVM (Model-View-ViewModel) giúp mã nguồn trở nên rõ ràng, dễ bảo trì và kiểm thử. Việc tạo ứng dụng media không chỉ là viết code mà còn là quá trình thiết kế một kiến trúc bền vững. Đây là phần cốt lõi trong bất kỳ source code app nghe nhạc chất lượng nào.

4.1. Lựa chọn ExoPlayer thay vì MediaPlayer để phát nhạc

Trong khi MediaPlayer là một phần của Android Framework và dễ sử dụng cho các tác vụ đơn giản, ExoPlayer lại là lựa chọn chuyên nghiệp hơn. ExoPlayer là một thư viện độc lập, cho phép cập nhật dễ dàng qua Gradle. Nó hỗ trợ các giao thức streaming hiện đại như DASH và HLS, tự động điều chỉnh chất lượng video/audio dựa trên băng thông mạng. Đối với một ứng dụng nghe nhạc trực tuyến, khả năng xử lý buffer hiệu quả và hỗ trợ nhiều định dạng của ExoPlayer mang lại trải nghiệm nghe nhạc không bị gián đoạn. Đây là lý do chính khiến nó được ưu tiên trong các dự án đòi hỏi chất lượng cao.

4.2. Triển khai Service và BroadcastReceiver cho phát nhạc nền

Để đảm bảo ứng dụng có thể phát nhạc nền, việc sử dụng Service trong Android là bắt buộc. Một Foreground Service được tạo ra để chạy tác vụ phát nhạc, kèm theo một thông báo trên thanh trạng thái. Thông báo này, hay notification control music, cho phép người dùng điều khiển nhạc (play, pause, next) ngay cả khi ứng dụng không hiển thị trên màn hình. BroadcastReceiver được sử dụng để lắng nghe các sự kiện hệ thống, ví dụ như khi người dùng rút tai nghe, để tự động dừng nhạc. Sự kết hợp giữa Service và BroadcastReceiver tạo nên một trải nghiệm người dùng liền mạch và chuyên nghiệp, một yêu cầu không thể thiếu của mọi ứng dụng nghe nhạc.

V. Chi tiết các tính năng chính trong code app nghe nhạc Android

Một đồ án xây dựng ứng dụng nghe nhạc trên Android thành công được đánh giá qua các tính năng mà nó cung cấp. THK Music, theo tài liệu, đã triển khai một loạt tính năng để nâng cao trải nghiệm người dùng. Tính năng quản lý playlist cho phép người dùng tạo, chỉnh sửa và chia sẻ các danh sách phát cá nhân. Đây là một tính năng cơ bản nhưng cực kỳ quan trọng để giữ chân người dùng. Bên cạnh đó, các tính năng xã hội như "Music Room" (phòng nghe nhạc chung) và kênh do người dùng tạo là những điểm nhấn sáng tạo. Chúng biến việc nghe nhạc từ một hoạt động cá nhân thành một trải nghiệm cộng đồng. Về mặt kỹ thuật, việc hiển thị và điều khiển nhạc từ thanh thông báo (notification control music) là một tính năng bắt buộc. Nó cho phép người dùng tương tác nhanh với trình phát nhạc mà không cần mở lại ứng dụng. Toàn bộ code app nghe nhạc android được tổ chức để hỗ trợ các tính năng này một cách module hóa. Giao diện người dùng được thiết kế trên Figma và hiện thực hóa bằng các thành phần của Android SDK, đảm bảo tính nhất quán và thẩm mỹ. Quản lý các bài hát đã tải về để nghe ngoại tuyến cũng được xử lý cẩn thận, giúp người dùng tiết kiệm dữ liệu di động. Những tính năng này khi kết hợp lại tạo thành một sản phẩm hoàn chỉnh, là một ví dụ điển hình cho những ai đang tìm kiếm music player source code để học hỏi.

5.1. Xây dựng chức năng quản lý playlist và bài hát yêu thích

Chức năng quản lý playlist là trái tim của việc cá nhân hóa trải nghiệm âm nhạc. Người dùng có thể tự do tạo ra các danh sách phát theo tâm trạng, thể loại hoặc sự kiện. Về mặt kỹ thuật, điều này đòi hỏi một hệ thống cơ sở dữ liệu để lưu trữ mối quan hệ giữa người dùng, playlist và các bài hát. Các thao tác như thêm, xóa, sắp xếp lại bài hát trong playlist cần được xử lý một cách hiệu quả cả ở phía client và backend. Tính năng "bài hát yêu thích" là một dạng playlist đặc biệt, giúp người dùng truy cập nhanh vào những bản nhạc họ tâm đắc nhất. Việc triển khai tốt các chức năng này sẽ làm tăng đáng kể sự gắn bó của người dùng với ứng dụng.

5.2. Hiện thực hóa tính năng nghe nhạc chung và thông báo điều khiển

Tính năng nghe nhạc chung (Music Room) yêu cầu giao tiếp thời gian thực giữa các client. Socket.io ở backend và một client tương ứng ở phía Android sẽ chịu trách nhiệm đồng bộ hóa trạng thái (bài hát đang phát, thời gian phát). Điều này tạo ra một thử thách kỹ thuật thú vị về độ trễ và sự ổn định của kết nối. Trong khi đó, notification control music được hiện thực hóa bằng cách sử dụng MediaStyle Notification hoặc các API MediaSessionCompat. Điều này không chỉ cung cấp các nút điều khiển mà còn hiển thị cả ảnh bìa album trên thông báo, tạo ra một giao diện điều khiển chuyên nghiệp và tích hợp sâu với hệ thống Android.

VI. Kết luận và định hướng phát triển cho đồ án ứng dụng nhạc

Việc hoàn thành đồ án xây dựng ứng dụng nghe nhạc trên Android THK Music đã đạt được những kết quả đáng kể. Dự án không chỉ tạo ra một sản phẩm chức năng mà còn mang lại ý nghĩa khoa học và thực tiễn lớn. Về mặt khoa học, đồ án đã áp dụng và kiểm chứng hiệu quả của các công nghệ hiện đại như ExoPlayer, Node.js, và Firebase trong bối cảnh cụ thể của một ứng dụng media. Quá trình thiết kế và thử nghiệm giao diện người dùng cung cấp những bài học quý giá về thiết kế tương tác và trải nghiệm người dùng. Về mặt thực tiễn, ứng dụng cung cấp một giải pháp nghe nhạc tiện lợi, cá nhân hóa và có tính cộng đồng. Một báo cáo đồ án ứng dụng nghe nhạc chi tiết về quá trình này sẽ là một tài liệu tham khảo đồ án vô giá cho các sinh viên ngành công nghệ thông tin. Nó cung cấp một lộ trình rõ ràng từ khâu lên ý tưởng, phân tích, thiết kế, đến triển khai và kiểm thử. Hướng phát triển trong tương lai có thể bao gồm việc mở rộng ứng dụng sang nền tảng iOS để tiếp cận nhiều người dùng hơn. Ngoài ra, có thể tích hợp sâu hơn các thuật toán học máy để cải thiện hệ thống gợi ý bài hát, tự động tạo playlist dựa trên thói quen nghe của người dùng. Việc tối ưu hóa hiệu năng và mở rộng thư viện nhạc thông qua các API nhạc khác cũng là những bước đi tiềm năng để nâng cao giá trị của ứng dụng.

6.1. Đánh giá kết quả đạt được và ý nghĩa khoa học của đồ án

Dự án đã thành công trong việc tạo ra một ứng dụng nghe nhạc hoàn chỉnh với các tính năng cốt lõi và nâng cao. Các kết quả chức năng bao gồm một thư viện nhạc đa dạng, trải nghiệm cá nhân hóa, và các tính năng tương tác xã hội. Ý nghĩa khoa học nằm ở việc áp dụng thực tiễn các lý thuyết về lập trình di động, kiến trúc phần mềm và tương tác người-máy. Việc phân tích và so sánh các công nghệ như MediaPlayerExoPlayer, hay lựa chọn giữa các giải pháp backend, đều đóng góp vào kho tàng kiến thức thực tiễn của ngành. Đồ án là minh chứng cho khả năng của sinh viên trong việc giải quyết một bài toán phức tạp từ đầu đến cuối.

6.2. Hướng phát triển tương lai cho các ứng dụng nghe nhạc

Tương lai của các ứng dụng nghe nhạc nằm ở sự thông minh và cá nhân hóa. Hướng phát triển tiềm năng bao gồm việc sử dụng trí tuệ nhân tạo để phân tích cảm xúc qua giọng nói và gợi ý nhạc phù hợp. Tích hợp với các thiết bị IoT như loa thông minh hay xe hơi cũng là một xu hướng tất yếu. Về mặt nội dung, việc mở rộng sang podcast và sách nói có thể thu hút thêm nhiều đối tượng người dùng. Đối với đồ án tốt nghiệp android như THK Music, các bước tiếp theo có thể là cải thiện thuật toán gợi ý, tối ưu hóa ứng dụng cho các thiết bị gập, và xây dựng một hệ thống phân tích dữ liệu người dùng mạnh mẽ hơn để đưa ra các quyết định kinh doanh.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI. Nếu bạn thấy nội dung không chính xác hoặc có vấn đề, vui lòng Báo lỗi nội dung.

18/12/2025
Build and audio player on android platform

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

MINISTRY OF EDUCATION AND TRAINING HO CHI MINH CITY UNIVERSITY OF TECHNOLOGY AND EDUCATION GRADUATION THESIS INFORMATION TECHNOLOGY BUILD AND AUDIO PLAYER ON ANDROID PLATFORM INSTRUCTOR: TRUONG THI NGOC PHUONG, Msc STUDENT: TRAN MINH KHAI TRAN MANH HUY NGUYEN QUOC DUC TIN SKL013478 Ho Chi Minh City, April 2024 HO CHI MINH UNIVERSITY OF TECHNOLOGY AND EDUCATION FACULTY OF INTERNATIONAL EDUCATION ---------------------------- GRADUATION PROJECT BUILD AN AUDIO PLAYER ON ANDROID PLATFORM TRẦN MINH KHẢI 20110372 TRẦN MẠNH HUY 20142178 NGUYỄN QUỐC ĐỨC TÍN 20110016 Major: INFORMATION TECHNOLOGY Supervisor: TRƯƠNG THỊ NGỌC PHƯỢNG, Msc. Ho Chi Minh, April 2024 1 SOCIALIST REPUBLIC OF VIETNAM Independence - Freedom – Happiness -------- Ho Chi Minh City, January 20, 2024 GRADUATION PROJECT ASSIGNMENT Students’ names: 1. Trần Minh Khải ID: 20110372 Class: 20110CLA4 2. Trần Mạnh Huy ID: 20142178 Class: 20110CLA4 3.

Nguyễn Quốc Đức Tín ID: 20110016 Class: 20110CLA3 Major: Information Technology Supervisor: Trương Thị Ngọc Phượng, Msc Phone: ………………………. Date of assignment: 01/02/2023 Date of submission: 17/06/2024 1. Project title: Build an audio Player on Android Platform 2. Initial materials provided by supervisor: None 3.

Content of the project: • Design and implementation of user interface (UI). • Integration of audio playback functionality. • Integration recommendation and notication systems. • Integration user and audio metadata systems.

• Integration payment, sharing music and searching music systems. Final product: A complete convenient and modern android music streaming application. CHAIR OF THE PROGRAM SUPERVISOR (Sign with full name) (Sign with full name) 2 THE SOCIALIST REPUBLIC OF VIETNAM Independence – Freedom– Happiness -------- ---- SUPERVISOR’S EVALUATION SHEET Student name: Trần Minh Khải Student ID: 20110372 Student name: Trần Mạnh Huy Student ID: 20142178 Student name: Nguyễn Quốc Đức Tín Student ID: 20110016 Major: Information Technology Project title: Build an audio Player on Android Platform Supervisor: Trương Thị Ngọc Phượng, Msc EVALUATION 1. Content and workload of the project.

Approval for oral defense? (Approved or denied) .) Ho Chi Minh City, month day, year SUPERVISOR (Sign with full name) 3 THE SOCIALIST REPUBLIC OF VIETNAM Independence – Freedom– Happiness -------- PRE-DEFENSE EVALUATION SHEET Student name: Trần Minh Khải Student ID: 20110372 Student name: Trần Mạnh Huy Student ID: 20142178 Student name: Nguyễn Quốc Đức Tín Student ID: 20110016 Major: Information Technology Project title: Build an audio Player on Android Platform Name of Examiner:. Content and workload of the project. Approval for oral defense? (Approved or denied) .) Ho Chi Minh City, month day, year EXAMINER (Sign with full name) 4 THE SOCIALIST REPUBLIC OF VIETNAM Independence – Freedom– Happiness -------- EVALUATION SHEET OF DEFENSE COMMITTEE MEMBER Student name: Trần Minh Khải Student ID: 20110372 Student name: Trần Mạnh Huy Student ID: 20142178 Student name: Nguyễn Quốc Đức Tín Student ID: 20110016 Major: Information Technology Project title: Build an audio Player on Android Platform Name of Defense Committee Member:. Content and workload of the project .) Ho Chi Minh City, month day, year COMMITTEE MEMBER (Sign with full name) 5 Build an Audio Player on Android Platform DISCLAIMER This report is submitted in partial fulfillment of the requirements for studying.

The information contained within this document represents the views and conclusions of the author based on the research conducted. While every effort has been made to ensure the accuracy of the information, the author assumes no responsibility for any errors or omissions. The use of any information or material contained within this report is at the reader's own risk. The author does not accept any liability for any loss or damage resulting from the use of this information.

This project includes the use of free music from various online platforms. The author does not assume any legal responsibility for copyright issues arising from the use of these music files. Users are advised to ensure compliance with relevant copyright laws when using music from any source. 6 Build an Audio Player on Android Platform ACKNOWLEDGEMENTS I would like to express my sincere gratitude to all those who have supported and guided me throughout the process of completing this project.

Firstly, I am deeply indebted to my supervisor, Trương Thị Ngọc Phượng, PhD, for her continuous support, insightful comments, and invaluable guidance. Her expertise and encouragement have been instrumental in the completion of this report. I would also like to thank the faculty and staff of the Information Technology Department at Ho Chi Minh City University of Technology and Education for providing the resources and environment necessary for this research. We completed the subject and report within a limited timeframe, facing constraints in terms of knowledge and various challenges related to methodologies and architectural expertise.

Given these circumstances, we acknowledge the possibility of imperfections in the development process. Consequently, we eagerly anticipate and value your constructive feedback, which we believe will significantly contribute to our continuous learning and improvement. Our dedicated efforts throughout the semester culminated in this final project, and as novice learners, we recognize the existence of several shortcomings in our design. Your feedback and suggestions for enhancing our project are warmly welcomed and deeply appreciated.

Thank you sincerely for your guidance and support! Special thanks to my family and friends for their unwavering support and encouragement. Their understanding and patience have been a source of strength throughout my studies. Finally, I am grateful to my classmates and colleagues for their camaraderie and assistance during this journey. Their cooperation and collaboration have made this experience truly enriching.

Thank you sincerely for your guidance and support! 7 Build an Audio Player on Android Platform TABLE OF CONTENTS CHAPTER 1.1 Reason for Choosing the Topic.2 Goal of the Topic .3 Research Approach and Methodology .4 Survey of the Current Situation .2 Application: Zing MP3 .5 Expected Results to Achieve .2 User Experience Enhancements .3 Technical and Developmental Deliverables .6 Scientific and Practical Meaning. TECHNOLOGIES AND LIBRARIES. 38 8 Build an Audio Player on Android Platform 2. Figma - Ui design.

Use case diagram. Use case specification .1 Sequence play music .4 Sequence search music .5 Sequence join music party .6 Sequence upgrade premium .7 Sequence config profile sequence .8 Sequence browse songs history .9 Sequence browse downloaded songs .10 Sequence browse loved songs .11 Sequence load song from local storage .12 Sequence download music .13 Sequence create music party .14 Sequence view users .15 Sequence update users .16 Sequence delete users .17 Sequence view songs .18 Sequence create song .19 Sequence update songs .20 Sequence delete songs.21 Sequence view artists. 102 9 Build an Audio Player on Android Platform 3.22 Sequence create artist .23 Sequence update aritst.24 Sequence delete artist .25 Sequence view genres .26 Sequence create genre .27 Sequence update genre .28 Sequence delete genre .29 Sequence view albums .30 Sequence create album .31 Sequence update album.32 Sequence delete album .33 Sequence view notifications .34 Sequence create notification .35 Sequence delete notification .36 Sequence view banners .37 Sequence create banners .38 Sequence update banners .39 Sequence delete banners .40 Sequence admin login .2 User Interface Prototype .3 Music Room Screen .6 Loved Song Screen, Recent Song Screen and Download Screen. 128 10 Build an Audio Player on Android Platform 4.7 Upgrade Premium Screen .9 Update Profile Screen .11 Media Player Screen .12 Music Queue Sheet .3 Web Admin UI.2 User Management Screen .3 Song Management Screen.4 Artist Management Screen.

ADVANTAGES AND DISADVANTAGES. 144 11 Build an Audio Player on Android Platform List of Figures Figure 1. Mp3 player UI of NCT. HomePage UI of NCT.

HomePage UI of ZingMp3. zingchart UI of ZingMp3. Profile UI of ZingMp3. Firebase Cloud Messaging.

38 Figure 19 Android SDK. 47 Figure 28 React Router DOM. 48 Figure 30 System architecture. 52 Figure 31 User use case diagram.

53 Figure 32 Admin Use Case Diagram. Sequence play music. Sequence search music. Sequence Join Music Party.

86 12 Build an Audio Player on Android Platform Figure 39. Sequence upgrade premium. Sequence config profile sequence. Sequence browse songs history.

Sequence browse downloaded songs. Sequence browse loved songs. Sequence load song from local storage. Sequence download music.

Sequence create music party. Sequence view users. Sequence update users. Sequence delete users.

Sequence view songs. Sequence create song. Sequence update songs. Sequence delete songs.

Sequence view artists. Sequence create artist. Sequence update aritst. Sequence delete artist.

Sequence view genres. Sequence create genre. Sequence update genre. Sequence delete genre.

Sequence view albums. Sequence create album. Sequence update album. Sequence delete album.

Sequence view notifications. Sequence create notification. Sequence delete notification. Sequence view banners.

Sequence create banners. Sequence update banners. Sequence delete banners. Sequence admin login.

121 Figure 74 Home fragment wireframe. 123 Figure 75 Home fragment wireframe. 123 Figure 76 Home fragment wireframe. 123 Figure 77 Library fragment wireframe.

123 Figure 78 Background UI. 124 13 Build an Audio Player on Android Platform Figure 79 Home Fragment UI. 124 Figure 80 Search UI. 124 Figure 81 Profile fragment UI when do not login.

124 Figure 82 Profile fragment UI when logined. 125 Figure 83 Playlist UI. 125 Figure 84 Premium UI. 125 Figure 85 Media Player UI.

125 Figure 86 Splash Screen. 126 Figure 87 Home Screen. 126 Figure 88 Music Room Screen. 127 Figure 89 Library Screen.

127 Figure 90 Profile Screen. 128 Figure 91 Loved Song. 128 Figure 92 Recent Song. 128 Figure 93 Downloaded Song.

128 Figure 94 Upgrade Premium Screen. 129 Figure 95 Payment Sheet Await. 129 Figure 96 Payment Sheet Completedt. 129 Figure 97 Update Profile Screen.

130 Figure 98 Album Screen. 130 Figure 99 Media Player Screen. 132 Figure 100 Music Queue Sheet. 132 Figure 101 Login Screen.

133 Figure 102 User Management Screen. 133 Figure 103 Song Management Screen. 134 Figure 104 Artist Management Screen. 134 List of Tables Table 1.

Play music use case description. Explore music feed use case description. Search music feed use case description. Sign up use case description.

Login use case description. Join music party use case description. Upgrade premium use case description. Config profile use case description.

Browse history song use case description. Browse downloads song use case description. 60 14 Build an Audio Player on Android Platform Table 11. Browse love song use case description.

Load song from your storage use case description. Download music use case description. Create music party use case description. View users use case description.

Update user use case description. Delete user use case description. View songs use case description. Create song use case description.

Update song use case description. Delete song use case description. View artists use case description. Create artist use case description.

Update artist use case description. Delete artist use case description. View genres use case description. Create genre use case description.

Update genre use case description. Delete genre use case description. View albums use case description. Create album use case description.

Update albm use case description. Delete albums use case description. View notifications use case description. Create notification use case description.

Update notification use case description. View banners use case description. Create banner use case description. Update banner use case description.

Delete banner use case description. Login admin use case description. 75 15 Build an Audio Player on Android Platform CHAPTER 1.1 Reason for Choosing the Topic The rapid proliferation of smartphones and the widespread adoption of the Android operating system have transformed how people interact with technology, particularly in the realm of multimedia consumption.

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