1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo Cáo Đồ Án Cơ Sở 3 Tên Đề Tài- Xây Dựng App Phát Nhạc Online.pdf

28 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 28
Dung lượng 1,36 MB

Nội dung

Lúc này, những người xây dựng app di động được quantâm, chú ý với cơ hội phát triển bản thân, phát triển sự nghiệp hiệu quả.Lập trình ứng dụng di động chính là việc sử dụng những ngôn ng

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

VÀ TRUYỀN THÔNG VIỆT - HÀN

Khoa kỹ thuật máy tính - điện tử

BÁO CÁO ĐỒ ÁN CƠ SỞ 3

TÊN ĐỀ TÀI: Xây dựng app phát nhạc online

Sinh viên thực hiện : Phạm Văn Quân

Mã sinh viên : 21CE042

Giảng viên hướng dẫn : ThS Nguyễn Đức Phước

Đà Nẵng, tháng 05 năm 2023

Trang 2

LỜI CẢM ƠN

Chúng em xin chân thành cảm ơn sự giúp đỡ nhiệt tình của giảng viênhướng dẫn ThS Nguyễn Đức Phước, người đã định hướng, hướng dẫn cũngnhư hỗ trợ cho chúng em trong quá trình chuẩn bị và tiến hành để chúng em cóthể hoàn thành tốt đồ án này

Chúng em cũng xin gửi lời cảm ơn tới các thầy cô giáo, giảng viêntrong Khoa Công Nghê X Thông và Truyền Thông – ĐHĐN đã cung cấp chochúng em những kiến thức cần thiết để thực hiện đồ án này

Chúng em cũng xin gửi lời cảm ơn đến gia đình, bạn bè luôn động viêngiúp đỡ chúng em trong suốt thời gian học tập và nghiên cứu, đóng góp nhữngkinh nghiệm quý báu trong thời gian thực hiện đề tài này

Kính chúc thầy cô mạnh khỏe, công tác tốt, tiếp tục giảng dạy và đào tạothế hệ trẻ thành công

Xin chân thành cảm ơn!!

Trang 3

NHẬN XÉT CỦA GIÁO VIÊN

Sinh viên đã hoàn thành được một ứng dụng Android cho mục đích nghe nhạc với những chức năng cần thiết Ứng dụng hỗ trợ nhiều giao diện như Quick Picks, Songs, Playlists, Artists, và Albums Ngoài ra ứng dụng cũng chạy nền khi ẩn app Tuy nhiên, các phần Favorites hoặc Offline vẫn chưa được thể hiện

rõ Ứng dụng có tiềm năng phát triển thêm.

Đà Nẵng, ngày 09 tháng 05 năm 2022

Giảng viên hướng dẫn.

Trang 4

LỜI NÓI ĐẦU

Khi nhu cầu của người dùng tăng cao tạo cơ hội không chỉ cho các hãngsản xuất mà các những nhà lập trình di động Từ việc phát triển các ứng dụng

di động giúp việc khai thác hết những tính năng, lợi ích của thiết bị hữu ích nàytrở nên dễ dàng hơn Lúc này, những người xây dựng app di động được quantâm, chú ý với cơ hội phát triển bản thân, phát triển sự nghiệp hiệu quả.Lập trình ứng dụng di động chính là việc sử dụng những ngôn ngữ lậptrình để viết app phát triển những ứng dụng để gia tăng tới mức tốt nhất tiện íchcho thiết bị di động mà người dùng đang dùng Trong đó, hai hệ điều hành

được sử dụng phổ biến hiện nay là iOS và Android thì việc có thể thiết kế app mobile phù hợp sẽ đáp ứng tốt cho những yêu cầu, đòi hỏi thực tế của con

người Trong đó, những ứng dụng phổ biến như chat, game, từ điển, đọctruyện, tổng hợp thông tin chứng khoán, giá vàng, hay truy cập mạng xã hội,ứng dụng cho doanh nghiệp

Ngày nay, với sự phát triển nhanh chóng của xã hội, nhu cầu giải trí thông qua

điện thoại di động ngày càng phổ biến, vì vậy em đã chọn đề tài “Xây dựng ứng dụng android nghe nhạc online” với mục đích nghiên cứu, tìm hiểu về

ứng dụng nghe nhạc trên android để có thể đáp ứng nhu cầu giải trí đó, giúpcho mọi người có thể thư giãn thông qua ứng dụng một cách dễ dàng

Trang 5

Mục Lục

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI 7

1.1 Bối cảnh của đề tài: 7

1.2 Lý do chọn đề tài: 7

1.3 Mục tiêu của đề tài: 8

1.4 Nội dung thực hiện: 8

1.4.1 Để tiếp cận được với lập trình Android 8

1.5 Các chức năng đặc trưng 9

1.5.1 Phát (gần như) mọi bài hát hoặc video từ YouTube Music: 9

1.5.2 Phát lại nền 9

1.5.3 Tìm kiếm bài hát, album, video nghệ sĩ và danh sách phát 10

1.5.4 Các chức năng khác 10

CHƯƠNG 2 CÔNG CỤ KỸ THUẬT 11

2.1 Giới thiệu chung về hệ điều hành Android: 11

2.1.1 Android khác với các hệ điều hành chạy trên thiết bị di động khác 11

2.1.2 Đặc tính mở của Android 12

2.1.3 Kiến trúc của Android 12

a) Android Platform 12

b) Tầng Linux Kernel 12

c) Native Libraries 13

d) Tầng Runtime 13

e) Tầng Application Framework 13

2.2 Môi trường phát triển ứng dụng Android studio: 15

CHƯƠNG 3 XÂY DỰNG ỨNG DỤNG 16

3.1 Giao diện người dùng 16

3.1.1 Giao diện quick picks: 16

3.1.2 Giao diện tìm kiếm: 17

3.1.3 Giao diện Songs: 18

3.1.4 Giao diện Playlits: 19

3.1.5 Giao diện Artists: 21

3.1.6 Giao diện Albums: 25

3.1.7 Giao diện phát nhạc: 25

KẾT LUẬN 27

Trang 6

Mục hình ảnh

Hình 2.1 Sơ đồ kiến trúc Android 14

Hình 2.2 Android studio 15

Hình 3.1 Giao diện Quickpicks 16

Hình 3.2 Giao diện tìm kiếm 17

Hình 3.3 Giao diện Songs 18

Hình 3.4 Giao diện Playlists & Favorites 20

Hình 3.5 Giao diện tạo, xóa, đổi tên Playlists 21

Hình 3.6 Giao diện Artists 22

Hình 3.7 Tìm kiếm Artists 23

Hình 3.8 Các mục của Artists 24

Hình 3.9 Giao diện Album 25

Hình 3.10 Giao diện phát nhạc 26

Trang 7

CHƯƠNG 1.TỔNG QUAN VỀ ĐỀ TÀI

1.1 Bối cảnh của đề tài:

Xã hội ngày càng phát triển, đời sống con người ngày càng được cải thiện

vì thế mà nhiều nhu cầu về giải trí của con người ngày càng phát sinh cụ thể lànghe nhạc để thư giãn đầu óc sau những giờ làm việc căng thẳng Đặc biệttrong những năm gần đây, số lượng thiết bị di động tăng cao đến mức khó tin,

đi kèm với đó là các ứng dụng di động cũng ngày càng đa dạng và ưu việt.Trên thị trường có rất nhiều ứng dụng nghe nhạc nhưng lại chưa thật sựhiệu quả và đáp ứng được nhu cầu của người dùng Các ứng dụng tốt muốnđược khai thác triệt để thì phải tốn một khoản tiền không nhỏ hàng tháng đểduy trì tài khoản VIP Việc này đối với người đi làm thì không có gì đáng kểnhưng đối với các đối tượng tuổi “teen” vẫn đang còn đi học và chưa có khảnăng tự chủ về kinh tế hoặc thu nhập chưa cao thì đó quả thực là một số tiềnlớn

Rất nhiều các bạn trẻ có đam mê sáng tác, ca hát và muốn chia sẻ các bàihát hát của mình đến người nghe nhưng lại chưa tìm được môi trường thíchhợp

1.2 Lý do chọn đề tài:

Công nghê X thông tin (CNTT) ngày càng có vai trò quan trọng trong cuô Xcsống h”ng ngày của chúng ta Viê Xc ứng dụng CNTT vào các l•nh vực trong đờisống giúp công viê Xc được tiến hành nhanh chóng và hiê Xu quả hơn Có rất nhiềucông viê Xc mới phát triển song song với sự phát triển của CNTT Mô Xt trongnhững số đó là lâ Xp trình di động, hướng đi mang lại hiê Xu quả kinh tế cao

Em chọn đề tài “Xây dựng ứng dụng android nghe nhạc online” nh”m tìmhiểu sâu hơn lập trình di động, từ đó tạo ra một ứng dụng thử nghiê Xm làm cơ sởcủng cố kiến thức và định hướng, phát triển hướng dịch vụ cho tương lai

Trang 8

1.3 Mục tiêu của đề tài:

Mục tiêu đề tài mục đích nh”m nghiên cứu môi trường xây dụng và pháttriển một ứng dụng nghe nhạc cụ thể

Tìm hiểu tài liệu, các mã nguồn mở và xây dựng 1 ứng dụng có đầy đủthông tin của các bài hát, cho phép người dùng dù ở bất kì đâu cũng có thể tìmkiếm, tạo playlists và nghe các bài nhạc yêu thích

Về phía nhà cung cấp nhạc, họ sẽ không cần phải thông qua các thủ tụcrườm rà mà có thể đăng tải nhạc một cách nhanh chóng và hiệu quả

1.4 Nội dung thực hiện:

 Đọc xem tài liệu, tìm hiểu các mã nguồn mở cũng như tham khảo cácứng dụng hiện có trên thị trường nh”m thiết kế một giao diện phù hợp nhất vớingười dùng

 Thiết kế database phù hợp với những yêu cầu về chức năng có tronggiao diện

1.4.1 Để tiếp cận được với lập trình Android

"Understanding Android" là cách mà ta tiếp cận lập trình Android và thấuhiểu kiến trúc hệ thống của nó Chúng ta có thể không cần hiểu rõ cấu trúc củamột HDH nhưng chúng ta vẫn có thể lập trình một ứng dụng trên HDH đó, đây

là điều mà nhà sản xuất muốn khi release SDK với một framework có sẵn của

họ Như chúng ta biết điều này cũng có mặt tốt và xấu Framework là một tầngcao cấp dành cho lập trình viên, nó đều có giới hạn của nó, chúng ta có thể chỉ

có thể lập trình những ứng dụng phổ biến nhưng không nên tiến tới những ứngdụng cao cấp đi sâu vào hệ thống của HDH Theo cách của mình, trước khi bắtđầu học Android, chúng ta nên nghiên cứu qua bản thân HDH Android, chúng

ta không cần phải hiểu rõ nó như thể nào, mục đích quan trọng nhất của chúng

ta là có cái nhìn chung và toàn diện nhất về Android

Trang 9

1.5 Các chức năng đặc trưng

1.5.1 Phát (gần như) mọi bài hát hoặc video từ YouTube Music:

ViMusic là một app nghe nhạc trực tuyến trên ứng dụng di động củaYouTube và nó cho phép người dùng duyệt qua các bài hát này, các video

âm nhạc YouTube và dựa trên sở thích của bạn bao gồm là thể loại , danhsách phát và đề xuất

Ứng dụng cho phép người dùng nghe tất cả các bài nhạc trên YouTube Bao gồm nhiều bài hát phát hành từ các nghệ s• chính thống và mở rộng đến bất

kỳ video nào được phân loại là âm nhạc trên YouTube

Ưu điểm đầu tiên phải nhắc đến của ứng dụng này đó là nó không bao gồmcác quảng cáo, các bạn sẽ không bao giờ phải nghe những kiểu bài thuốcgia truyền 3 đời 4 đời nữa và người dùng có thể tải bài hát để phát lại ngoạituyến, khi mà mình đã tải về máy rồi thì nó sẽ đỡ cái dung lượng 4G haywi-fi

1.5.2 Phát lại nền

Khi dùng ứng dụng ViMusic, bạn có thể làm chủ trải nghiệm nghe nhạc củamình b”ng tính năng phát ngẫu nhiên một danh sách phát hoặc phát lặp lạimột bài hát Lưu trữ các đoạn âm thanh bài hát để phát lại ngoại tuyến Ứngdụng sẽ tự động tải nội dung xuống dựa trên nhật ký nghe của bạn

Trang 10

Hình 1.5 Giao diện chạy nền

1.5.3 Tìm kiếm bài hát, album, video nghệ sĩ và danh sách phát.

Với chức năng gần giống với nền tảng Youtube bạn có thể tìm kiếm từ khóa

về sản phẩm âm nhạc, nghệ s•, album và có thể lưu hết những thứ đó vàodanh sách phát hay mục yêu thích của bạn b”ng cách đánh dấu , tạo và nhậpplaylist.Tìm nạp, hiển thị và chỉnh sửa lời bài hát hoặc lời bài hát đượcđồng bộ hóa.App chỉ cho ra những kết quả tìm kiếm liên quan đến l•nh vực

Trang 11

CHƯƠNG 2 CÔNG CỤ KỸ THUẬT

2.1 Giới thiệu chung về hệ điều hành Android:

Trước hết Android là nền tảng phần mềm dựa trên mã nguồn mở Linux

OS (Kernel 2.6) cho máy di động và những phần mềm trung gian (middleware)

để hổ trợ các ứng dụng mà người sử dụng cần đến Một cách định ngh•a khôngquá chuyên môn thì có thể coi Android là tên một nền tảng mở cho thiết bị diđộng của Google (gồm hệ điều hành, middleware và một số ứng dụng cơ bản).Android sẽ đương đầu với một số hệ điều hành (viết tắt là HDH) dành cho thiết

bị di động khác đang hâm nóng thị trường như OS X (iPhone)

Có thể nói một cách nôm na r”ng Android là một HDH chạy trên thiết bị

di động, cũng giống như Windows, Linux hay Mac chạy trên máy vi tính vậy

2.1.1 Android khác với các hệ điều hành chạy trên thiết bị

di động khác

Android đã thu hút được sự chú ý của giới công nghệ khắp toàn cầu khiđứa con của Google sử dụng giấy phép mã nguồn mở Đó là một sản phẩm kếttinh từ ý tưởng của Khối Liên minh thiết bị cầm tay mở do Google dẫn đầu,gồm 34 thành viên với các công ty hàng đầu về công nghệ và di động toàn cầunhư Qualcomm, Intel, Motorola, Texas Instruments và LG Electronics, các nhà

Trang 12

mạng như T-Mobile, Sprint Nextel, NTT DoCoMo và China Mobile Các nhàphát triển có thể sử dụng miễn phí bộ Kit Android Software Development đểxây dựng các ứng dụng của mình

2.1.2 Đặc tính mở của Android

Android được xây dựng để cho phép các nhà phát triển để tạo ra các ứngdụng di động hấp dẫn, tận dụng tất cả tính năng một chiếc điện thoại đã cungcấp Nó được xây dựng để được thực sự mở Ví dụ, một ứng dụng có thể gọibất kỳ chức năng lõi của điện thoại như thực hiện cuộc gọi, gửi tin nhắn vănbản, hoặc b”ng cách sử dụng máy ảnh, cho phép các nhà phát triển để tạo ranhiều ứng dụng phong phú hơn cho người dùng (điều này hiện chưa có trênWindows Phone 7 của Microsoft) Android được xây dựng trên mã nguồn

mở Linux Kernel Hơn nữa, nó sử dụng một máy ảo tuỳ chỉnh được thiết kế đểtối ưu hóa bộ nhớ và tài nguyên phần cứng trong một môi trường di động.Android không phân biệt giữa các ứng dụng lõi của điện thoại và các ứngdụng của bên thứ ba Tất cả có thể được xây dựng để có thể truy cập b”ng khảnăng của một thiết bị di động cung cấp cho người sử dụng với một dải rộng cácứng dụng và dịch vụ Với các thiết bị xây dựng trên Android, người dùng cóthể hoàn toàn thích ứng với điện thoại đến lợi ích của họ Với Android, mộtnhà phát triển có thể xây dựng một ứng dụng cho phép người dùng xem vị trícủa bạn bè của họ và được cảnh báo khi họ đang có trong vùng phụ cận cho họmột cơ hội để kết nối

Android cung cấp truy cập đến một loạt các thư viện công cụ hữu ích và

có thể được sử dụng để xây dựng các ứng dụng phong phú Ngoài ra, Androidbao gồm một tập hợp đầy đủ công cụ đã được xây dựng công phu, với việccung cấp nền tảng phát triển, với năng suất cao và cái nhìn sâu vào các ứngdụng

2.1.3 Kiến trúc của Android

a) Android Platform

Bao gồm HDH Android đầy đủ tính năng, các ứng dụng và các tầng trunggian để developer có thể mở rộng, tùy chỉnh hoặc thêm vào các component củahọ

Có 4 tầng cơ bản trong HDH Android: Application Framework, AndroidRuntime, Native Libraries, Linux Kernel

Mỗi tầng làm việc đều nhờ sự giúp đỡ của tầng bên dưới

b) Tầng Linux Kernel

Đây là nhân của HDH Android, mọi xử lý của hệ thống đều phải thôngqua tầng này Linux Kernel cung cấp các trình điều khiển thiết bị phần cứng

Trang 13

(driver) như: camera, USB, Wifi, Bluetooth, Display, Power Management Android dựa trên Linux phiên bản 2.6 lựa chọn các tính năng cốt lõi như bảomật, quản lý bộ nhớ, quản lý tiến trình, mạng stack và các trình điều khiểnphần cứng Kernel hoạt động như một lớp trừu tượng giữa phần cứng và phầnmềm còn lại của hệ thống.

 Surface Manager - quản lý việc hiển thị và kết hợp đồ họa 2D và 3D

 LibWebCore - Android dùng lại webkit engine cho việc render trìnhduyệt mặc định của HDH Android browser và cho dạng web nhúng (nhưHTML nhúng)

 SGL – 2D engine

 3D libraries - Thư viện 3D dựa trên OpenGL ES 1.0 API, có nâng cấptăng tốc "hardware 3D acceleration”

 FreeType - render bitmap và vector font

 SQLite - quản lý database của ứng dụng

d) Tầng Runtime

Mỗi ứng dụng Android chạy trên một quá trình riêng của Dalvik VM(máy ảo) Dalvik được viết để chạy nhiều máy ảo cùng một lúc một cách hiệuquả trên cùng một thiết bị

Máy ảo Dalvik thực thi các file mang định dạng dex (Dalvik Excutable),định dạng này là định dạng đã được tối ưu hóa để chỉ chiếm một vùng nhớ vừa

đủ xài và nhỏ nhất có thể VM chạy các class (đã được compile trước đó bởi1trình biên dịch ngôn ngữ Java), sở d• VM chạy được các class này là nhờ

chương trình DX tool đã convert các class sang định dạng dex

Trang 14

cập, các dịch vụ chạy nền, thiết lập hệ thống báo thức, thêm các thông báo đểcác thanh trạng thái, và nhiều, nhiều hơn nữa.

Tất cả các ứng dụng thường gồm một bộ các dịch vụ và hệ thống cơ bảnsau:

 View UI dùng để xây dựng layout của ứng dụng bao gồm: list view, textfield, button, dialog, form

 Content Providers cho phép các ứng dụng có thể truy cập dữ liệu từ cácứng dụng khác (như ứng dụng của ta có thể lấy thông tin Contacts củađiện thoại Android), hoặc để chia sẻ dữ liệu của riêng ứng dụng

 Resource Manager cung cấp cách thức truy cập đến non-code resourcesnhư các asset, graphic, image, music, video

 Notification Manager cho phép tất cả các ứng dụng hiển thị thông báocủa mình trên HDH

 Activity Manager quản lý vòng đời của các ứng dụng

Ở góc nhìn của người dùng ta có thêm tầng application (là ứng dụng dochúng ta viết), sau đây là sơ đồ tổng quát như hình 1.1:

Trang 15

Hình 2.1 Sơ đồ kiến trúc Android

Trang 16

2.2 Môi trường phát triển ứng dụng Android studio:

Android Studio là một nền tảng IDE (integrated development environment)1

dùng để phát triển các ứng dụng android, được Google release vào khoảng đầunăm 2015 thay thế cho bản Eclipse cũ Android Studio được phát triển dựa trênIntelliJ IDEA Community Edition - công cụ lập trình tốt nhất cho java, giúpcho các lập trình viên tạo ứng dụng, thực hiện các thay đổi một cách dễ dàng,bên cạnh đó có thể xem trước trong thời gian thực và thiết kế giao diện đẹphơn trước Tiếng Việt cũng đã được tích hợp trong Android Studio Đặc biệt,Android Studio cho phép người dùng Import Project từ Eclipse sang và logiclập trình cũng tương tự

Hình 2.2 Android studio

Ngày đăng: 19/12/2024, 21:35

w