Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 50 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
50
Dung lượng
2 MB
Nội dung
Music Player TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THƠNG VIỆT HÀN Khoa Khoa Học Máy Tính BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ỨNG DỤNG NGHE NHẠC Sinh viên thực hiện: Đỗ Ngọc Thắng Lớp: 19i2 Giảng viên hướng dẫn: TS Lê Thị Thu Nga Đà Nẵng, tháng 11 năm 2021 P a g e | 50 Music Player TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THƠNG VIỆT HÀN Khoa Khoa Học Máy Tính BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ỨNG DỤNG NGHE NHẠC Sinh viên thực hiện: Lớp: Đỗ Ngọc Thắng 19i2 Giảng viên hướng dẫn: TS Lê Thị Thu Nga Đà Nẵng, tháng 11 năm 2021 P a g e | 50 Music Player MỤC LỤC Mở đầu CHƯƠNG CÔNG NGHỆ CÔNG CỤ SỬ DỤNG I II Hệ điều hành Android Công cụ, công nghệ CHƯƠNG ĐẶC TẢ YÊU CẦU 13 I II Yêu cầu chức 13 Yêu cầu phi chức 13 CHƯƠNG PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 22 I Mơ hình hóa u cầu 22 II Mơ hình hóa cấu trúc 25 III Mơ hình hóa hành vi 27 IV Thiết kế kiến trúc vật lý 35 CHƯƠNG GIAO DIỆN ỨNG DỤNG 37 I II Sơ đồ tổ chức 37 Chi tiết hình 38 KẾT LUẬN 48 TÀI LIỆU THAM KHẢO 50 P a g e | 50 Music Player Mở đầu 1.Giới thiệu Trong sống đại, âm nhạc trở thành nhu cầu thiết yếu người Xã hội văn minh với phát triển mạnh mẽ thiết bị di động khiến nhu cầu giải trí người ngày tăng cao Nhu cầu nghe nhạc người số Một ứng dụng nghe nhạc dường thứ khơng thể thiếu thiết bị di động thông minh Music Player ứng dụng nghe phát triển dựa tính phổ biến app nghe nhạc bổ sung tinh nhu cầu thực tế sử dụng Ứng dụng cho phép khách hàng nghe nhạc tải file nhạc từ nguồn trực tuyến Thiết kê giao diện trực quan đơn giản, tối ưu hóa trải nghiệm người dùng Đây tài liệu phục vụ cho dự án ứng dụng chơi nhạc Music TPN, tài liệu xây dựng theo tường chương để thuận tiện cho trình xây dựng thiết kế ứng dụng 2.Mục tiêu phạm vi đề tài Đề tài nhằm xây dựng ứng dụng chơi nhạc Music Player điện thọại di động Đây ứng dựng nghe nhạc chạy tảng android từ phiên Android 8.1 Ứng dụng dụng tốt điện thoại thơng minh máy tính bảng có cài đặt hệ điều hành android Music Player cho phép khách hàng nghe nhạc tải file nhạc từ nguồn trực tuyến Thiết kế giao diện trực quan, đơn giản, tối ưu hóa trải nghiệm người dùng Ngồi ra, ứng dụng cho phép người dùng nghe nhạc lưu trữ quản lý nhạc nhớ thiết bị từ internet hồn tồn miễn phí 3.Bố cục đề tài Ngoài phần mở đầu kết luận, đề tài bố trí chương, cụ thể sau: Chương 1: Công nghệ công cụ sử dụng Chương 2: Đặc tả yêu cầu Chương 3: Phân tích thiết kế hệ thống Chương 4: Giao diện ứng dụng P a g e | 50 Music Player CHƯƠNG CÔNG NGHỆ CÔNG CỤ SỬ DỤNG I Hệ điều hành Android Android hệ điều hành điện thoại di động mở nguồn mở miễn phí Google phát triển dựa tảng Linux Bất kỳ hãng sản xuất phần cứng tự sử dụng hệ điều hành Android cho thiết bị mình, miễn thiết bị đáp ứng tiêu chuẩn Google đặt (có cảm ứng chạm, GPS, 3G, ) Các nhà sản xuất tự thay đổi phiên Android máy cách tự mà không cần phải xin phép hay trả khoản phí phải đảm bảo tính tương thích ngược (backward compatibility) phiên chế riêng Android tảng cho thiết bị di động bao gồm hệ điều hành, midware số ứng dụng chủ đạo Bộ công cụ Android SDK cung cấp công cụ thư viên hàm API cần thiết để phát triển ứng dụng cho tảng Android sử dụng ngơn ngữ lập trình java Những tính mà tảng Android hổ trợ: - Application framework: Cho phép tái sử dụng thay thành phần sẳn có Android - Dalvik virtual macine: Máy ảo java tối ưu hóa cho thiết bị di động - Intergrated browser: Trình duyệt web tích hợp xây dựng dựa WebKIT engine - Optimized graphics: Hổ trợ thư viện 2D 3D dự vào đặc tả OpenGL ES 1.0 - SQLite: DBMS dùng để lưu trữ liệu có cấu trúc - Hỗ trở định dạng media phổ biến như: MPEG4, H.264, MP3, AAC, ARM, JPG, PNG, GIF - Hổ trợ thoại tảng GSM (Phụ thuộc vài phần cứng thiết bị) - Bluetooth, EDGE, 3G WiFi (Phụ thuộc vài phần cứng thiết bị) - Camera, GPS, la bàn cảm biến (Phụ thuộc vài phần cứng thiết bị) P a g e | 50 Music Player - Bộ công cụ phát triển ứng dụng mạnh mẽ Phiên SDK lần phát hành vào tháng 11 năm 2007, hãng T-Mobile công bố điện thoại Android T-Mobile G1, smartphone dựa tảng Android Một vài ngày sau đó, Google lại tiếp tục công bố mắt phiên Android SDK release Candidate 1.0 Trong tháng 10 năm 2008, Google cấp giấy phép mã nguồn mở cho Android Platform Khi Android phát hành số mục tiêu kiến trúc cho phép ứng dụng tương tácđược với sử dụng lại thành phần từ ứng dụng khác Việc tái sử dụng không áp dụng cho cho dịch vụ mà áp dụng cho thành phần liệu giao diện người dùng Vào cuối năm 2008, Google cho phát hành thiết bị cầm tay gọi Android Dev Phone chạy ứng dụng Android mà không bị ràng buộc vào nhà cung cấp mạng điện thoại di động Mục tiêu thiết bị cho phép nhà phát triển thực thí nghiệm thiết bị thực chạy hệ điều hành Android mà ký hợp đồng Vào khoảng thời gian Google cho phát hành phiên vản vá lỗi 1.1 hệ điều hành Ở hai phiên 1.0 1.1 Android chưa hỗ trợ soft-keyboard mà đòi hỏi thiết bị phải sử dụng bàn phím vật lý Android cố định vấn đề cách phát hành SDK 1.5 vào tháng Tư năm 2009, với số tính khác Chẳng hạn nâng cao khả ghi âm truyền thông, vật dụng, live folder II Công cụ, công nghệ 1.Android Studio Android Studio môi trường phát triển tích hợp (IDE) thức cho việc phát triển ứng dụng Android Nơi mà nhà phát triển viết code lắp ráp ứng dụng họ từ gói Và thư viện khác Android Studio hỗ trợ loạt giả lập để xem trước ứng dụng, bạn khơng có thiết bị thử nghiệm, bạn chắn thứ hoạt động trơn tru Bên cạnh đó, loạt cơng cự lời khun tối ưu hóa, đồ thị doanh số bán hàng, số liệu lấy từ phân tích giúp nhà phát triển quản lý ứng dụng bán tìm hướng cụ thể với thiết bị Android P a g e | 50 Music Player Android Studio hỗ trợ hệ điều hành Windows, Mac OS X Linux, IDE thức Google để phát triển ứng dụng Android gốc để thay cho Android Development Tools (ADT) dựa Eclipse Android studio có nhiều lợi ích tính mà người dùng khai thác đặc biệt việc cài đặt android studio cịn giúp lập trình viên mơ để tiến hành sửa lỗi nâng cấp sản phẩm cần thiết Trên trình soạn thảo mã cơng cụ phát triển mạnh mẽ IntelliJ, Android Studio cung cấp nhiều tính nâng cao hiệu suất bạn xây dựng ứng dụng Android, chẳng hạn như: - Một hệ thống xây dựng Gradle linh hoạt - Trình mơ nhanh tính phong phú - Một mơi trường hợp nơi bạn phát triển cho tất thiết bị Android - Instant Run để đẩy thay đổi vào ứng dụng chạy bạn mà khơng cần xây dựng APK - Tích hợp GitHub để giúp bạn xây dựng tính ứng dụng phổ biến nhập mã mẫu - Lint công cụ để bắt hiệu suất, khả sử dụng, tương thích phiên bản, vấn đề khác - Hỗ trợ C ++ NDK - Tích hợp hỗ trợ Google Cloud Platform , giúp dễ dàng tích hợp Google Cloud Messaging App Engine - Hỗ trợ tích hợp sâu Firebase vào ứng dụng sau click chuột Ngôn ngữ Kotlin Kotlin dạng ngơn ngữ lập trình thiết kế chuẩn hóa dựa theo hệ thống quy tắc riêng Qua đó, người lập trình thực chương trình mô tả để làm công việc dành riêng cho thiết bị điện tử mà người thiết bị hiểu Hiện nay, ngơn ngữ lập trình Kotlin nhiều nhà lập trình tìm hiểu quan tâm Trong khoảng thời gian ngắn số lượng download sử dụng tăng lên cách nhanh chóng Để hiểu rõ tăng trưởng này, bạn cần phải hiểu Kotlin gì? Nó hiểu sau: P a g e | 50 Music Player Kotlin loại ngơn ngữ lập trình dạng tĩnh sử dụng dành cho ứng dụng thuộc dạng đa tảng đại Hiện nay, người ta thức phát hành phiên 1.0.Kotlin tạo phát triển đội ngũ lập trình nằm nhóm JetBrains Sự xuất ngơn ngữ lập trình Kotlin khiến cho ngơn ngữ Java Android bị “sốn ngơi” Từ đó, Kotlin trở thành ngơn ngữ thơng dụng với Android Kotlin thiết kế với khả tương tác với Java code khai thác có bên Java Class Library Từ đây, phát sinh định nghĩa Kotlin Android gì? Hãy tìm hiểu định nghĩa nhé! Kotlin Android bạn cách đơn giản ứng dụng Android có khả sử dụng ngơn ngữ lập trình Kotlin Sau trở thành ngơn ngữ lập trình Android vào năm 2019 Kotlin Google hỗ trợ đầy đủ để tham gia đầy đủ vào gói cài đặt IDE để thay cho trình biên dịch Java dạng tiêu chuẩn Ưu điểm bật ngôn ngữ lập trình Sự thu hút ngơn ngữ lập trình Kotlin xuất phát từ ưu điểm mà ngôn ngữ lập trình mang lại Nếu ngơn ngữ lập trình thơng thường chắn rằng, khơng thể khoảng thời gian ngắn mà Kotlin thu hút mạnh mẽ đến Vậy ưu điểm bật Kotlin gì? P a g e | 50 Music Player Kotlin dần thay Java Android Kotlin khắc phục yếu điểm Java: Khơng thể phủ nhận vai trị Java Android nói riêng ngành cơng nghệ thơng tin nói chung Hiện nay, Java ngơn ngữ lập trình ưu tiên sử dụng lập trình viên thực dự án Android tồn hạn chế định Một vấn đề lớn tồn đọng Java thiếu khả mở rộng khơng thể hỗ trợ tính cho lập trình hàm Mặc dù Java giới thiệu mang lại tính cho nhà phát triển như: biểu thức lambda, interface methods yếu tố lập trình hàm Tuy nhiên, Android Java hỗ trợ phần tính mà Java cung cấp Chính vậy, đời Kotlin chuyên gia đánh giá khắc phục hoàn toàn hạn chế mà Java khơng thực Với đặc tính thừa hưởng từ Java nên bạn sử dụng Kotlin khai thác tảng từ Java class Library có Code ngắn gọn dễ hiểu Ngơn ngữ lập trình Kotlin xây dựng hệ thống code giúp lập trình viên dễ đọc, dễ viết dễ làm việc Những người bắt đầu tiếp thu dễ dàng kiến thức đặc thù loại ngôn ngữ Việc tối giản số lượng code P a g e | 50 Music Player giúp cho Kotlin mang lại trải nghiệm thú vị cho người dùng so với loại ngôn ngữ khác Java Kotlin khơng bị lỗi NullPointerException Với lập trình viên bạn thấy rõ NullPointerException lỗi thường xuyên xuất dự án viết ngơn ngữ lập trình Java Lỗi NullPointerException xuất bạn gán giá trị null đến với đối tượng đó, nhiên truy xuất đối tượng lại bị xuất lỗi Khi chạy Android, bạn quên cập nhật đối tượng cho Java bạn nhận log crash (dừng đột ngột) báo cáo hệ thống Những lỗi NullPointerException.Kotlin thiết kế để giảm thiểu loại bỏ hầu hết nguồn tham chiếu Null dựa vào chế null-safety Chính vậy, theo chun gia việc sử dụng ngơn ngữ lập trình Kotlin trở nên an toàn Java nhiều Hầu hết lập trình viên trọng đến lỗi xảy code, nên code ngắn lỗi Chính thế, nên code Kotlin thiết kế ngắn gọn so với code viết Java mà kết kiểm tra cho giống Để dễ hiểu bạn hình dung sau: Nếu bạn định nghĩa class Java cần phải sử dụng đến dịng dùng Kotlin dịng code giảm xuống cịn đến dịng chí dịng mà kết sau cho tương tự Kotlin có khả tương tác cao Kotlin xem ngơn ngữ lập trình chạy máy ảo tương tự Java Tuy nhiên, khả tương tác cao giúp cho Kotlin tương thích 100% với Java nên dự án sử dụng Java Kotlin Hiện nay, developer Android có khả sử dụng Java class library dùng Kotlin để thực viết code ngược lại Nhờ vậy, bạn sử dụng ngơn ngữ để phát triển mở rộng cho việc phát triển dự án Java cũ mà không cần phải bắt lại P a g e 10 | 50 Music Player 2.Biểu đồ thành phần ứng dụng P a g e 36 | 50 Music Player CHƯƠNG GIAO DIỆN ỨNG DỤNG I Sơ đồ tổ chức Thiết kế gồm có thành phần sơ đồ đây: P a g e 37 | 50 Music Player II Chi tiết hình HOME Chú thích - Màn hình người dùng nhìn thấy mở ứng dụng bao gồm: + Banner top hài trending + Danh sách hát nghe trước + Danh danh hát thiết bị P a g e 38 | 50 Music Player TRENDING Chú thích Màn hình trending bao gồm: + Danh sách ca sĩ có hát thuộc top trending xếp theo bố cục nằm ngang +Danh sách hát thuộc top trending P a g e 39 | 50 Music Player ALBUM Chú thích Chứa danh sách album theo dạng grid P a g e 40 | 50 Music Player GENRES Chú thích Chứa danh sách thể loại theo dạng grid P a g e 41 | 50 Music Player TRACKS LIST Chú thích Chứa danh sách hát thuộc album thể loại P a g e 42 | 50 Music Player SEARCH Chú thích Màn hình tìm kiếm bao gồm danh sách hát, album ca sĩ tìm từ key word + Danh sách hát bố trí theo chiều dọc + Danh sách Album chia theo dạng grid + Danh sách ca sĩ bố trí theo chiều ngang P a g e 43 | 50 Music Player MY FAVORITES Chú thích Chứa danh sách hát mà người dùng chọn u thích trước P a g e 44 | 50 Music Player PLAY MUSIC Chú thích Màn hình play nhạc chứa thơng tin hát hình bên + Controller: play, next, previous, repeat, shuffle + Icon yêu thích để + Mục danh sách phát P a g e 45 | 50 Music Player PLAY MUSIC Chú thích Phía hiển thị danh dánh phát nhóm hát (theo thể loại album) Phía hiển thị danh sách hát thiết bị P a g e 46 | 50 Music Player NOTIFICATION Chú thích Khi người dùng play nhạc background hiển thị notification chứa thơng tin hát button xử lý kiện P a g e 47 | 50 Music Player KẾT LUẬN Kết đạt Sau bao nỗ lực cố gắng với hỗ trợ tích cực từ giáo viên hướng dẫn nhà trường, phần mềm đồ án xây dựng ứng dụng nghe nhạc hoàn thiện Đồ án đạt số kết quả: - Về lý thuyết: + Tìm hiểu nghiên cứu android + Sử dụng thành thạo nắm rõ ngôn ngữ lập trình Kotlin + Hiểu rõ mơ hình MVVM áp dụng vào dự án + Tìm hiểu sử dụng công cụ Jetpack google - Về thực nghiệm: + Bước đầu hoàn thiện ứng dụng nghe nhạc với đầy đủ chức cần thiết + Sử dụng thành thạo thành phần android như: Activity, Service, Broadcast Receiver + Biết cách sử dụng Retrofit để lấy dự liệu từ API + Biết cách xử lý bất đồng với Coroutine + Biết sử dụng git để quản lý mã nguồn Những khó khăn gặp phải thực dự án: - Chưa có kinh nghiệm xây dựng ứng dụng theo mơ hình MVVM nên ban đầu gặp nhiều khó khăn - Việc xây dụng giao diện đẹp mắt mà không phụ thuộc vào thư viện bên thứ nhiều thời gian để tìm hiểu 3.Những hạn chế ứng dụng: Mặc dù thân em cô gắng, nhiên chắn khơng thể tránh khỏi thiếu sót, ứng dụng chưa hồn chỉnh, cịn thiếu số chức - Do việc thắt chặt quản lý thông tin android phiên sau, nên việc sử dụng broadcast receiver khơng cịn lựa chọn tối ưu - Từ phiên android 12 (S), việc hiển thị mediaplayer thơng báo khơng cịn dễ dàng trước Đây tình trạng chung gặp phải tất app nghe nhạc Android - Chưa thể tích hợp chức download nhạc sử dụng phiên API miễn phí P a g e 48 | 50 Music Player 4.Hướng phát triển tương lai: - Bỏ qua việc truyền thông tin qua Broadcast xử lý logic tồn Service - Tìm hiểu phương thức hoạt động notification phiên Android tích hợp lại chức điều khiển nhạc thơng báo hình khóa - Deploy app lên CH play - Tự phát triển RestAPI riêng làm nguồn cấp liệu cho ứng dụng - Tối ưu hóa trải nghiệm người dùng Qua q trình thực đề tài, em củng cố thực hành đươc nhiều kiến thức học tìm hiểu thêm nhiều kiến thức để hồn thành ứng dụng cách trọn vẹn Trong tương lại, em tiếp tục nâng cấp phát triển ứng dụng theo hướng nêu việc phát hành ứng dụng đưa vào sử dụng thực tế P a g e 49 | 50 Music Player TÀI LIỆU THAM KHẢO [1] https://developer.android.com/reference/android/media/MediaPlayer [2] https://kipalog.kaopiz.com/posts/Android MVVM-architecture-pattern [3] Head First Design Patterns - Eric Freeman, Kathy Sierra, Bert Bates, P a g e 50 | 50 ... thông minh Music Player ứng dụng nghe phát triển dựa tính phổ biến app nghe nhạc bổ sung tinh nhu cầu thực tế sử dụng Ứng dụng cho phép khách hàng nghe nhạc tải file nhạc từ nguồn trực tuyến... dùng Đây tài liệu phục vụ cho dự án ứng dụng chơi nhạc Music TPN, tài liệu xây dựng theo tường chương để thuận tiện cho trình xây dựng thiết kế ứng dụng 2.Mục tiêu phạm vi đề tài Đề tài nhằm... nghe nhạc xây dựng nhằm thực chức sau: - Chức nghe nhạc Nghe nhạc trực tuyến Nghe nhạc ngoại tuyến Nghe nhạc trực tiếp app Nhạc chạy tắt app - Chức hiển thị danh sách Danh sách nhạc