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

Tiểu luận lập trình ứng dụng cho mobile tên Đề tài xây dựng ứng dụng game Đuổi hình bắt chữ

19 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
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 19
Dung lượng 7,07 MB

Nội dung

1.2 Yêu cầu đề tài: > Công việc mà đê tài hướng đên bao gôm các chức năng nhự sau: - Bat đầu trò chơi - Hiện p1ao diện chính - _ Hiện các ô chữ cho người chơi nhập vào - - Tắt mở âm th

Trang 1

TRUONG DAI HQC BAC LIEU KHOA CONG NGHE THONG TIN

TIEU LUAN LAP TRINH UNG DUNG CHO MOBILE

TEN DE TAI

XAY DUNG UNG DUNG GAME DUOI HINH BAT

CHU

Sinh vién thuc hién M64 Sinh vién Pham Nhat Duy 207480201037

Bac Liêu thắng Í2 năm 2023

Trang 2

MUC LUC

T MO TA UNG DUNG Loc ccccccccccccsecssessessessessucssessessesssestessessuessessssessressessessuesuesseeseeeseesseveevens 3 4.1 DAC ta GS tai ccc 0n ng 221211 212111212112112112121121121 21111121 22a 3 4.2 YOU CAU GS tai ie ccc cc ccccccccccesecscssecscsucsessessessesussuesessnssessssusaueseescssessesseevsesvanssessseeaees 3

II cầu ốc na ẽ 3 ILCÁC BƯỚC THIẾT KÉ - S5 2 2521121115151121111211111121121111211111112112112111 E11 4

2.1 Một số thư viện được sử dụng -: ct 22221 tre 4

2.2 Các bước thiết kế S2 21121121111112111111111121121121112121 2112111121211 512 se 4 2.3 Lập trình trên File Java L0 0 21 10112121012121121121111 111 no 7 2.3.1 Khai báo MainActivity ác ch HH HH HH HH kg HH He 7

2.3.3 PIAYMOdE ec cccccccccsscsecsensccsesesessessessssevssesessevsecsessesssssesssasssssassessscsesesseeeaes 12

2.3.5 VWin 2n 1022111212112 1111212122 tre 13 III.GIAO DIỆN CHƯƠNG TRÌNH Ặ.- 1 2n 2211211211211211211 1211111212112 21215 sxre 15 3.1 Giao diện màn hình chờ TT TT TT 1n 1H nh HH TT HH 1kg crệt 15 3.2 Giao diện game L0 01 1 1010211101201 11 HH1 te 16

3.3 Giao diện chiến thắng 2222 2221111222111 re 17

IV.KÉT LUẬN 252 21 23 211211151121221121121122112112111121122112112111112111121121 12122 srerse, 18 TÀI LIỆU THAM KHẢO - 2S n2 112112112111111211111212111 1211211211211 11211 erre 19

Trang 3

I MO TA UNG DUNG 1.1 Dac ta dé tai

Trong thời đại công nghệ npày nay, việc xây dựng các ứng dụng siáo dục va giải trí trên điện thoại di động trở nên ngày càng phô biến Đề tai này tập trung vào việc phát triển một trò chơi giáo dục mang tên "Đuôi Hình Bắt Chữ" trên nền tảng Android

Mỗi màn chơi sẽ hiện ra một hình, người chơi trả lời đúng sẽ qua hình tiếp theo,

sẽ có gợi ý nếu người chơi tìm không được câu trả lời Nếu như sử dụng gợi thì phải đôi băng số điểm, số điểm ít nhất để đôi được gợi ý là 10 điểm

1.2 Yêu cầu đề tài:

> Công việc mà đê tài hướng đên bao gôm các chức năng nhự sau:

- Bat đầu trò chơi

- Hiện p1ao diện chính

- _ Hiện các ô chữ cho người chơi nhập vào

- - Tắt mở âm thanh

- Nut got y cho người chơi

- Nut quay lai trang chủ để người chơi bắt dau lại trò chơi

> Tìm hiểu về ngôn ngữ Java

> Cách sử dụng công cụ Android

1.3 Môi trường cài đặt

> Chạy trên hệ điêu hành Android

> Sử dụng ngôn ngữ lập trình Java

> Công cụ sử dụng Android Studio

Trang 4

ILCÁC BƯỚC THIẾT KE 2.1 Một số thư viện được sử dụng

-‘androidx.appcompat.app.AppCompatActivity: Day la mot class trong AndroidX, một bản cập nhật của Android Support Library AppCompatActivity la một lớp cơ sở cho tất cả các Activity trong ứng dụng Android của bạn và giúp hỗ trợ các tính năng mới của Android trở về phiên bản cũ

- ‘android.content Intent’: Lop Intent được sử dụng để thực hiện các hành động như khởi chạy một Activity mới, gửi và nhận dữ liệu giữa các thành phần của ứng dụng, và thậm chí mớ các thành phần nằm ngoài ứng dụng

- ‘android media AudioAttributes’: Lop AudioAttributes giúp đặt cấu hình cho cách âm thanh sẽ được phát lại hoặc ghi Điều nảy có thể bao gồm cấu hình về loại

sử dụng âm thanh, nội dung âm thanh, và các thuộc tính khác

- ‘android media.MediaPlayer’: Lop MediaPlayer cung cấp các phương thức dé quản lý và phát nhạc hoặc audio trong ứng dụng của bạn Bạn có thể sử dung no dé phát các loại tệp âm thanh như MP3, WAYV, AAC, va nhiều định dạng khác

- 'android.media.SoundPool': Lớp SoundPool cung cấp một cơ chế nhẹ để phát lại các âm thanh ngắn, thường được sử dụng cho hiệu ứng âm thanh trong game hoặc ứng dụng khác SoundPool tối ưu cho việc phát nhiều âm thanh ngắn cùng một lúc

2.2 Các bước thiết kế

Bước 1: Tạo Một Dự Án Mới Trong Android Studio

> Mo Android Studio và tạo một dự án mới

> Chon loại dự án (ví dụ: Empty Activity hoadc Basic Activity)

Bước 2: Thêm Tệp XML cho Cac Lop Activity

Trong thu muc res/layout, tao tép activity_main.xml cho MainActivity

Tương tự tạo tệp activity game cho man hinh hiển thị trò chơi, tạo tệp activity win cho man hình hiển thị bạn đã chiến thắng, và tạo tệp activity_traloi

cho mả hình hiển thị các câu hỏi

Bước 3: Thiết kế giao diện trong tệp XML

Trong tệp activity_main.xml sử đụng chủ yếu các thành phần để tạo một giao điện danh sách các bài hát và công cụ tìm kiêm Bao pgôm các thành phần chính:

> Button: Dé hién thị nút Bắt đầu và nút tắt mở nhạc

> ImageView: Dé hiển thị hình ảnh game Đuôi hình bắt chữ

4

Trang 5

BẮT ĐẦU

Hinh 1: Giao dién activity_main.xml Đến tệp activity_game.xml hién thi giao diện trò chơi ta thêm các thành phần sau:

> Button: Dé hién nit goly va tat mo nhac

> Textview: Đề hiện điểm và độ khó

> GridView: Đề hiện các items

Trang 6

Hinh 2 Giao dién activity_ game

Activity_win.xml hiến thị giao diện khi bạn đã trả lời được tất cả các câu hỏi, gồm các

thành phân:

> ImageButton: Để hiện nút quay về trang bắt đầu trò chơi

> Textview: Dé hiện chữ Bạn đã hoàn thành trò chơi

> ImageView:Dé hiện các hình ngôi sao

Trang 7

Hình 3 Giao dién activity win

Và cuối củng là tệp activity_traloi.xml để hiện thị các câu hỏi cho người chơi, gồm các thành phần sau:

TextView: Đề hiện các câu hỏi và đáp án để người chơi điền vào

Bước 4: Kết nói cau trúc các lớp Activity

Trong lớp java bao gồm 2 lớp chính là MainActivity và DapanAdapter

2.3 Lập trình trên File Java

Kết nối các cấu trúc trong lớp Activity Trong lớp java bao gồm có hai lớp chính là MainActivIty, game, playmode,question va win

2.3.1 Khai bao MainActivity

Ham onCreate

Thiết lập SplashScreen (nếu có)

Khởi tao va hién thị giao diện chính (activity_main.xml)

Lấy màu sắc mặc định của thanh trạng thái

Thiết lập thanh công cụ (Toolbar) vả tiêu để ứng dụng

Tìm các nút được gán ID

Đặt âm lượng cho đối tượng MediaPlayer

Trang 8

Hinh 4 Ham onCreate khoi tao giao dién Ham setOnClickListenner:

Thiét lập một OnClickLIstener mới cho nut music Khi nut nay được nhấn, mã lệnh trong phương thức onClick sẽ được thực hiện

Hình 5 Hàm setOnClickListenner 2.3.2 Game

Hàm onCreate(Bundle savedInstanceState):Gọi phương thức onCreate của lớp cha để

thực hiện các bước khởi tạo mặc định

- MediaPlayer.create(this, R.raw.game) :Tao va bắt đầu phát âm thanh từ tệp raw/game

- createSoundPool():Khoi tao SoundPool dé phat 4m thanh ngan

- _ soundPool.load(this, R.raw.keyclick, l): Tải âm thanh từ tệp raw/keyclick vao SoundPool và lấy ID của nó

- _ anhXa():Gọi phương thức anhXa() để ánh xạ các thành phần UI

- - nhac.setOnClickListener(new View.OnClickListener()):Thiết lập sự kiện cho nút nhac

Trang 9

Hinh 6: Ham onCreate(Bundle savedinstanceState) Ham createSoundPool():được sử dụng đề tạo đôi tượng SoundPool

tra xem phién ban Android cua thiết bị có lớn hơn hoặc bằng LOLLIPOP không

- AudioAttributes attributes: Tao déi tượng AudioAttributes để xác định cách âm thanh sẽ được sử dụng trong SoundPool Đối với phiên bản Android LOLLIPOP trở lên, AudioAttributes được sử dụng để cấu hình các thuộc tính

âm thanh

- soundPool: Sử dụng SoundPool.Builder để tạo đối tượng SoundPool với các thuộc tính được xác định bởi AudioAttributes Số luồng âm thanh tôi đa được đặt là 1

Trang 10

(Build VERSION VT >= Build VERSION_CODES AudioAttribu ttributes = AudioAttributes.Builder()

Usage(AudioAttribut

ContentType(AudioAttributes

„buiLd()

= SoundPool Builder ()

setMaxStre SoundPool ( 1, android.media.AudioManager

Hinh 7 Ham createSoundPool Hàm playSound(Q): được sử dụng để phát âm thanh bằng đối tượng SoundPool

Hình 8 Hàm playSound Hàm onDestroy(): được gọi khi activity được hủy bó Trong trường hợp này, nó được

sử dụng đề giải phóng tài nguyên của doi trong SoundPool

.onDestroy()

Hinh 9 Ham onDestroy Hàm anhXa():được sử dung de anh xa (map) cac thanh phan UI ti layout XML vao biên trong code Java

=findViewById(R.id

=findViewById(R.id

=findViewByTd(R

=findViewByld(R

=findViewBy1Id(R.id

Hình 10 Hàm anhXa

10

Trang 11

Hàm showResult():được sử dụng đề hiển thị kết quả và hiển thị đáp án của trò chơi

Hình 11 Hàm showResult

Ham click(): được sử dụng để xử lý sự kiện khi m6t myc trong GridView dap an

(øvda) được nhân

Hình 12 Hàm chck Hàm Data() : được sử dụng đề khởi tạo đữ liệu cho trò chơi

11

Trang 12

Hinh 13 Ham Data

Lớp playmodel là một mô hình chơi trong trò chơi, và nó có một sô thành phân quan trọng được khởi tạo trone hàm tạo

- - ArrayList<question> arr: Biến arr là một danh sách (ArrayList) chứa các đối tượng câu hỏi Đối tượng này lưu trữ các thông tin về các câu hỏi trong trò chơi

- _ public playmodel(game c) :Hàm tạo của lớp playmodel nhận một tham chiếu đến activity game và gọi phương thức data() đề khởi tạo dữ liệu của đối tượng playmodel

12

Trang 13

Hinh 14 Lop playmodel 2.3.4 Question

Lớp question: là một lớp đại diện cho một câu hỏi trong trò chơi, và nó chứa các thuộc tính như tên câu hỏi (ten), đáp ân (dapan), hình ảnh (anh), va giai thich (gy)

Hình 15 Lop question 2.3.5 Win

- — super.onCreate(savedInstanceState);: Gọi phương thức onCreate của lớp cha để thực hiện các công việc khởi tạo mặc định

- _ setContentView(R.layout.activity win);: Thiết lập layout cho activity từ tệp layout XML có tên là activity win Điều này xác định cách giao diện người dùng sẽ được hiển thị

- _ Intentin = new Intent(win.this, MainActivity.class);: Tạo một Intent để chuyển

tr activity win sang activity MainActivity

- startActivity(in);: Khoi chay activity méi duoc chi dinh trong Intent, tức là MainActivity

13

Trang 14

Hinh 16 Lop win

14

Trang 15

III.GIAO DIỆN CHƯƠNG TRÌNH 3.1 Giao diện màn hình chờ

BẮT ĐẦU

Hình 17 Giao điện màn hình chờ Khi người chơi nhân vào nút bắt đâu thì sẽ vào game, nhân vào nút âm thanh thì sẽ tắt

mở âm thanh

15

Trang 16

3.2 Giao dién game:

oe :

Hinh 18 Giao dién Game Game sé chia ra mức độ dễ, khó, trung bình Người chơi phải nhập đúng đáp án

để được qua màn tiếp theo, nêu người chơi không tìm ra được đáp án, người chơi sẽ

bám vảo nút hình bóng đèn đề nhận gợi ý nhưng người chơi phải có ít nhất là 10 điểm

để đổi được ĐỢI ý

16

Trang 17

3.3 Giao dién chién thang:

§› Đuối

Hình 19 Giao điện chiến thẳng Sau khi hoàn thành trò chơi thì màn hình chiên thang sé xuat hién, bam vào nút ngôi nhà sẽ trở về trang chính

17

Trang 18

IV.KET LUAN

Sau một thời gian tìm hiểu đề tài “Xây đựng game đuôi hình bắt chữ” em đã thực hiện được nội dung đề tài theo yêu cầu đặt ra Với mục đích là tìm hiểu về hệ điều hành Android, hiểu biết về ngôn ngữ lập trình mới cho điện thoại di động Android và tìm hiểu các ứng dụng của hệ điều hành Android trong thế giới di động ngảy nay Thông qua việc tìm hiểu và nắm bắt lý thuyết về hệ điều hành Android, bước đầu đã xây dựng thành công chương trình thực nghiệm với các chức năng cơ bản

Trong quá trình tìm hiểu lý thuyết về hệ điều hành Android và xây dựng ứng game đuôi hình bắt chữ em đã thu được kết quả sau:

- Hiểu và sử dụng được các lớp đối tượng, các thư viện hỗ trợ lập trình trên nền tảng hệ điều hành Android

- Xây dựng thành công ứng dụng đemo với các chức năng cơ bản như bắt đầu trò chơi, hiến thị giao điện trò chơi để người chơi sử dụng

- Đóng gói ứng dụng thành file.apk cho phép cài đặt trên điện thoại Android

Do thời gian có hạn củng với kiến thức của bản thân còn hạn chế nên em chưa tìm hiểu sâu về các kiến thức liên quan tới hệ điều hành Android nên chương trình vẫn còn rất nhiều hạn chế, em sẽ cố gắng phát triên thêm để chương trình thêm bắt mắt và thêm nhiêu chức năng hơn nữa

18

Trang 19

TAI LIEU THAM KHAO

[1] ThS Tran Khanh Luan, ThS Huynh Thi My Trâm (2023) Bài giảng Lập trình

tưng dụng cho Mobile Trường Đại học Bạc Liêu

[2]I.https:/⁄www.voutube.com/results?search_query=dumv

19

Ngày đăng: 09/12/2024, 17:49