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

Lập trình game sudoku trên Android

19 395 0

Đ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 1,67 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

CHƯƠNG TRÌNH DEMO 5,0 điểm Giao diện thân thiện với người dùng 0,5 điểm Hướng dẫn sử dụng 0,5 điểm Kết quả thực hiện đúng với kết quả của phần ứng dụng tối đa 4,0 điểm Cài đặt CSDL cùng

Trang 1

ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN NIÊN LUẬN 4

(Học kỳ : 02, Năm học 2011-2012)

TÊN ĐỀ TÀI: LẬP TRÌNH GAME SUDOKU TRÊN ANDROID

GIÁO VIÊN HƯỚNG DẪN:

SINH VIÊN THỰC HIỆN:

(Tối đa 1,0 điểm)

ĐIỂM

(thang điểm 10)

I HÌNH THỨC (0,5 điểm)

Bìa (tối đa 0,25 điểm)

Đầy đủ các thông tin

Đúng định dạng

Bố cục (tối đa 0.25 điểm)

Trang đánh giá kết quả thực hiện niên luận 4

Mục lục: cấu trúc chương, mục và tiểu mục

Phụ lục (nếu có)

Tài liệu tham khảo

II NỘI DUNG (3,5 điểm)

Giới thiệu (tối đa 1,0 điểm)

Mô tả bài toán (0,5 điểm)

Mục tiêu cần đạt, hướng giải quyết (0,5 điểm)

Ứng dụng (tối đa 2,0 điểm)

Phân tích yêu cầu, các mô hình MCD-MLD (nếu có) và các ràng

buộc toàn vẹn (0.5 điểm)

Sơ đồ chức năng, lưu đồ giải thuật giải quyết vấn đề (0.5 điểm)

Diễn giải các màn hình (Form), báo biểu (report) (0.5 điểm)

Giới thiệu sử dụng Hệ thống (0,5 điểm)

Kết luận (tối đa 0,5 điểm)

Nhận xét kết quả đạt được

Hạn chế

Hướng phát triển

III CHƯƠNG TRÌNH DEMO (5,0 điểm)

Giao diện thân thiện với người dùng (0,5 điểm)

Hướng dẫn sử dụng (0,5 điểm)

Kết quả thực hiện đúng với kết quả của phần ứng dụng (tối đa 4,0 điểm)

Cài đặt CSDL cùng với các ràng buộc toàn vẹn (1,0 điểm)

Các Form thực hiện đúng (1,5 điểm)

Các báo biểu (report) hợp lý (1,0 điểm)

Chức năng bổ sung, sáng tạo (0,5 điểm)

Cần Thơ, ngày tháng … năm 2012

Giáo Viên Chấm

Trang 2

MỤC LỤC

Contents

2.1.4 Tất cả các ứng dụng có thể được tạo ra cho Android? 6

2.6 CÁC THÀNH PHẦN CHÍNH VÀ CHU KỲ CỦA MỘT ỨNG DỤNG ANDROID 12 2.6.1 Các thành phần chính trong một ứng dụng của Android 13

Trang 3

PHẦN TỔNG QUAN CHƯƠNG 1 TỔNG QUAN GIỚI THIỆU VÀ TÌM HIỂU ĐỀ TÀI

1.1 MÔ TẢ ĐỀ TÀI

Ngày nay, với sự phát triển của công nghệ, đặc biệt là lĩnh lực công nghệ thông tin

đã đem lại nhiều thành tựu phục vụ nhu cầu của con người như văn hóa, giáo dục, an ninh quốc phòng….Đặc biệt trong lĩnh vực di động nó đã góp phần mang lại nhiều lợi ích cho con người, như dễ dàng và thuận tiện liên lạc với nhau dù ở rất xa nhau làm giảm chỉ phi

đi lại nó còn là chất xúc tác cho phép kết nối mọi nơi và cập nhật tức thì Ở Việt Nam, những năm trước người sự dụng điện thoại di động còn hạn chế chưa phổ biến rộng rải, vài năm trở lại đây, nhu cầu sử dụng điện thoại di động đã tăng cao và con người ngày càng đỏi hỏi điện thoại di động không chi dùng để liện lạc mà còn phải được dùng để giải trí như thu thập thông tin, đọc tin tức, nghe nhạc chơi game… Và từ đó các game trên điện thoại

di động xuất hiện ngày càng nhiều, trên các hệ điều hành khác nhau như Android, iOS, RIM Blackberry OS, Symbian… Và Android là hệ điều hành do Google mua về và cho

ra đời vào năm 2007, đây là hệ điều hành tương đối mới và đang rất được ưa chuộng trên

thị trường từ khi nó ra đời, vì thế niên luận 4 em quyết định làm đề tài “Lập trình game

sudoku trên Android”

Hi vọng sau khi em làm xong đề tài này em sẽ có được một số ít kiến thức về hệ điều hành Android và cách lập trình ứng dụng cho hệ điều hành đang rất được ưa chuộng trên thị trường, để giúp ích em sau này khi ra trường và đi làm

Mô tả sơ lược về hệ thống:

Ứng dụng game Sudoku giao diện gồm 4 button là Bắt Đầu, Tiếp Tục,

Hướng Dẫn, Thoát Và 4 button này sẽ được chia thành 2 cột mỗi cột gồm 2 button một

trên và một dưới

• Giao diện bàn game gồm có 9x9 ô số là 9 hàng và 9 cột, và được chia thành 3x3 vùng, mỗi vùng gồm các số từ 1 đến 9

Khi người chơi chưa biết luật chơi thì người chơi nhấp vào button Hướng

Dẫn khi đó sẽ hiện ra một dialog hướng dẫn cụ thể về luật và cách chơi game.

Ứng dụng game có 3 mức để cho người dùng chơi gồm Dễ, Bình Thường

và Khó, với các mức chơi sẽ có các ô số khác nhau phù hợp với từng mức.

• Khi người chơi nhập số vào một ô số bất kỳ nếu số đã trong vùng đã có hoặc trong hàng hoặc cột đã có thì màn hình sẽ rung qua lại thông báo cho người chơi biết

là số đó không thể nhập vào nữa

• Khi người chơi đã nhập một số vào ô, nếu muốn xóa thì người dùng nhấn tổ hợp phím Ctrl+Space thì sẽ xóa mất số đã nhập vào

Trang 4

Ứng dụng game về cơ bản phải đạt được các yêu cầu như sau:

Giao diện hài hòa, thân thiện, dễ sữ dụng

Phải có menu hướng dẫn người chơi về luật chơi cũng như cách chơi game Game phải có được 3 mức chơi cho người chơi lựa chọn

Ở mỗi mức độ chơi thì độ khó phải tương ứng với mức độ chơi đó

Khi người chơi nhập một số vào ô bất kỳ

1.3 HƯỚNG GIẢI QUYẾT

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

Cách cài đặt Android SDK, cách plugin Android SDK cho eclipse

Cách tạo máy ảo Android Virtual Device

Cài đặt chương trình :

o Với yêu cầu của đề tài, ta cần thực hiện các vấn đề sau:

i Thiết kế giao diện và các chức năng cần thiết của chương trình.

ii. Đề tài thực hiện ở phạm vi nhỏ nên không thể hiện hết chức năng của chương trình, nếu như hoàn chỉnh tất cả các yêu cầu của chương trình thì bao gồm rất nhiều công viêc

o Giao diện chính của chương trình gồm :

i Button Bắt đầu

ii Button Tiếp tục

iii Button Hướng dẫn

iv Button Thoát

v Hình nền của chương trình

o Giao diện lúc chơi game :

i Bàn game gồm 9x9 ô số

ii Mỗi hàng, cột và một vùng gồm 9 con số

Viết báo cáo tổng hợp kết quả thực hiện đề tài

1.4 KẾ HOẠCH THỰC HIỆN

Đề tài được thực hiện như sau:

5 Nhận đề tài, viết mô tả chi tiết đề tài sắp xếp công việc

6 Phân tích đề tài

7 Phân tích hệ thống, thiết kế giao diện

8 Phân tích hệ thống, thiết kế giao diện

9 Viết code chương trình

10 Viết code chương trình

11 Viết code chương trình

12 Viết code chương trình

13

14

15

16

Trang 5

1.5 CÔNG CỤ PHÁT TRIỂN

• Android SDK (installer_r16-windown.exe) là tập hợp các công cụ để phát triển các ứng dụng trên nền tảng hệ điều hành Android

• Công cụ phát triển: Eclipse IDE for Java Developers dùng để viết code cho game

Trang 6

PHẦN CƠ SỞ LÝ THUYẾT CHƯƠNG 2 CÁC KHÁI NIỆM

2.1 SƠ LƯỢC QUÁ TRÌNH PHÁT TRIỂN CỦA ANDROID

2.1.1 Android là gì?

• Là một hệ thống điều hành, middleware và các ứng dụng di động chủ chốt

• Android là hệ điều hành trên điện thoại di động (và hiện nay là cả trên một số đầu phát HD, HD Player, TV) phát triển bởi Google và dựa trên nền tảng Linux

2.1.2 Lịch sử ra đời

Trước đây, Android được phát triển bởi công ty liên hợp Android ( sau đó được Google mua lại vào năm 2005)

Sự ra mắt của Android vào ngày 5 tháng 11 năm 2007 gắn với sự thành lập của liên minh thiết bị cầm tay mã nguồn mở, bao gồm 78 công ty phần cứng, phần mềm và viễn thông nhằm mục đính tạo nên một chuẩn mở cho điện thoại di động trong tương lai

2.1.3 Tính năng mở của hệ điều hành Android

Android được xây dựng để cho phép các nhà phát triển để tạo ra các ứng dụng

di động hấp dẫn tận dụng tất cả một chiếc điện thoại đã cung cấp Nó được xây dựng để được thực sự mở Ví dụ, một ứng dụng có thể kêu gọi bấ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ăn bả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 ra phong phú hơn và nhiều hơn nữa những kinh nghiệm cố kết cho người dùng Android được xây dựng trê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 là mã nguồn mở, nó có thể được liberally mở rộng Nền tảng này

sẽ tiếp tục tiến triển như cộng đồng nhà phát triển công việc cùng nhau để xây dựng các ứng dụng di động sáng tạo

2.1.4 Tất cả các ứng dụng có thể được tạo ra cho Android?

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 ứng dụng của bên thứ ba Họ tất cả có thể được xây dựng để có thể truy cập bằng khả năng của một người cung cấp cho người sử dụng điện thoại 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 Hệ điều hành 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ọ Họ có thể trao đổi trên màn hình của điện thoại, những phong cách của dialer, hoặc bất kỳ ứng dụng Họ thậm chí có thể hướng dẫn điện thoại của họ để sử dụng hình ảnh ưa thích của họ xem các ứng dụng để xử lý xem tất cả các hình ảnh

2.1.5 Cộng đồng phát triển Android:

Android có một cộng đồng phát triển ứng dụng rất lớn, hiện có khoảng hơn 70.000 ứng dụng có sẵn cho Android và đang liên tục được cập nhật Ứng dụng được phát triển bằng ngôn ngữ Java kết hợp với thư viện Java có sẵn của Google Các nhà phát triển ứng dụng có thể sử dụng máy tính chạy hệ điều hành Windows hoặc MacOS hoặc Linux

Trang 7

kết hợp với Android SDK để phát triển ứng dụng cho Android Hệ điều hành Android bao gồm 12.000.000 dòng mã trong đó có 3.000.000 dòng XML, 2.800.000 dòng C, 2.100.000 dòng Java, và 1.750.000 dòng C + +

2.2 DELVING VỚI MÁY ẢO DALVIK

Dalvik là máy ảo giúp các ứng dụng java chạy được trên các thiết bị động Android Nó chạy các ứng dụng đã được chuyển đổi thành một file thực thi Dalvik (dex) Định dạng phù hợp cho các hệ thống mà thường bị hạn chế về bộ nhớ và tốc độ xử lý

Dalvik trông giống như máy ảo Java (Java Virtual Machine) nhưng thực tế thì hoàn toàn khác dưới gốc nhìn của nhà phát triển Khi nhà phát triển viết một ứng dụng dành cho Android, anh ta thực hiện các đoạn mã trong môi trường Java Sau đó, nó sẽ được biên dịch sang các bytecode của Java, tuy nhiên để thực thi được ứng dụng này trên Android thì nhà phát triển phải thực thi một công cụ có tên là dx Đây là công cụ dùng để chuyển đổi bytecode sang một dạng gọi là dex bytecode "Dex" là từ viết tắt của "Dalvik executable" đóng vai trò như cơ chế ảo thực thi các ứng dụng Android

2.3 KIẾN TRÚC CỦA ANDROID :

Mô hình sau thể hiện một cách tổng quát các thành phần của hệ điều hành Android Mỗi một phần sẽ được đặc tả một cách chi tiết dưới đây

Hình 2.1: Cấu trúc stack hệ thống Android.

2.3.1 Tầng ứng dụng

Trang 8

Android được tích hợp sẵn một số ứng dụng cần thiết cơ bản như: contacts, browser, camera, Phone,… Tất cả các ứng dụng chạy trên hệ điều hành Android đều được viết bằng Java

2.3.2 Application framework

Bằng cách cung cấp một nền tảng phát triển mở, Android cung cấp cho các nhà phát triển khả năng xây dựng các ứng dụng cực kỳ phong phú và sáng tạo Nhà phát triển được tự do tận dụng các thiết bị phần cứng, thông tin địa điểm truy cập, các dịch vụ chạy nền, thiết lập hệ thống báo động, thêm các thông báo để các thanh trạng thái, và nhiều, nhiều hơn nữa

Nhà phát triển có thể truy cập vào các API cùng một khuôn khổ được sử dụng bởi các ứng dụng lõi Các kiến trúc ứng dụng được thiết kế để đơn giản hóa việc sử dụng lại các thành phần; bất kỳ ứng dụng có thể xuất bản khả năng của mình và ứng dụng nào khác sau đó có thể sử dụng những khả năng (có thể hạn chế bảo mật được thực thi bởi khuôn khổ) Cơ chế này cho phép các thành phần tương tự sẽ được thay thế bởi người sử dụng

Cơ bản tất cả các ứng dụng là một bộ các dịch vụ và các hệ thống, bao gồm:

• Một tập hợp rất nhiều các View có khả năng kế thừa lẫn nhau dùng để thiết kế phần giao diện ứng dụng như: gridview, tableview, linearlayout,…

• Một “Content Provider” cho phép các ứng dụng có thể truy xuất dữ liệu từ các ứng dụng khác (chẳng hạn như Contacts) hoặc là chia sẻ dữ liệu giữa các ứng dụng đó

• Một “Resource Manager” cung cấp truy xuất tới các tài nguyên không phải là mã nguồn, chẳng hạn như: localized strings, graphics, and layout files

• Một “Notifycation Manager” cho phép tất cả các ứng dụng hiển thị các custom alerts trong status bar

• Activity Maanager được dùng để quản lý chu trình sống của ứng dụng và điều hướng các activity

2.3.3 Library

Android bao gồm một tập hợp các thư viên C/C++ được sử dụng bởi nhiều thành phần khác nhau trong hệ thống Android Điều này được thể hiện thông qua nền tảng ứng dụng Android Một số các thư viện cơ bản được liệt kê dưới đây:

System C library: a BSD-derived implementation of the

standard C system library (libc), tuned for embedded Linux-based devices

Media Libraries - based on PacketVideo's OpenCORE;

the libraries support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG

Surface Manager – Quản lý việc truy xuất vào hệ thống hiển thị

LibWebCore - a modern web browser engine which

powers both the Android browser and an embeddable web view

SGL - the underlying 2D graphics engine.

Trang 9

3D libraries - an implementation based on OpenGL

ES 1.0 APIs; the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3D software rasterizer

FreeType - bitmap and vector font rendering.

SQLite - a powerful and lightweight relational database engine available to all

applications

2.3.4 Android Runtime

Android bao gồm một tập hợp các thư viện cơ bản mà cung cấp hầu hết các chức năng có sẵn trong các thư viện lõi của ngôn ngữ lập trình Java Tất cả các ứng dụng Android đều chạy trong tiến trình riêng Máy ảo Dalvik đã được viết để cho một thiết bị có thể chạy nhiều máy ảo hiệu quả Các VM Dalvik thực thi các tập tin thực thi Dalvik (dex) Định dạng được tối ưu hóa cho bộ nhớ tối thiểu VM là dựa trên register-based, và chạy các lớp đã được biên dịch bởi một trình biên dịch Java để chuyển đổi thành các định dạng dex Các VM Dalvik dựa vào nhân Linux cho các chức năng cơ bản như luồng và quản lý bộ nhớ thấp

2.3.5 Linux kernel

Android dựa trên Linux phiên bản 2.6 cho hệ thống dịch vụ cốt lõi như security, memory management, process management, network stack, and driver model Kernel Linux hoạt động như một lớp trừu tượng hóa giữa phần cứng và phần còn lại của phần mềm stack

2.4 ANDROID EMULATOR

Android SDK và Plugin Eclipse được gọi là một Android Deverloper Tool (ADT) Các Android coder sẽ cần phải sử dụng công cụ IDE (Integrated Development Enveronment) này để phát triển, debugging và testing cho ứng dụng Tuy nhiên, các coder cũng có thể không cần phải sử dụng IDE mà thay vào đó là sử dụng command line để biên dịch và tất nhiên là vẫn có Emulator như thường

Android Emulator được trang bị đầy đủ hầu hết các tính năng của một thiết bị thật Tuy nhiên, một số đã bị giới hạn như là kết nối qua cổng USB, camera và video, nghe phone, nguồn điện giả lập và bluetooth

Android Emulator thực hiện các công việc thông qua một bộ xử lý mã nguồn

mở, công nghệ này được gọi là QEMU (http://bellard.org/qemu/) được phát triển bởi Fabrice Bellard

Trang 10

Hình 2.2: Android Emulator.

2.5 CÁC THÀNH PHẦN TRONG MỘT ANDROID PROJECT

2.5.1 AndroidManifest.xml

Trong bất kì một project Android nào khi tạo ra đều có một file AndroidManifest.xml, file này được dùng để định nghĩa các screen sử dụng, các permission cũng như các theme cho ứng dụng Đồng thời nó cũng chứa thông tin về phiên bản SDK cũng như main activity sẽ chạy đầu tiên

File này được tự động sinh ra khi tạo một Android project Trong file manifest bao giờ cũng có 3 thành phần chính đó là: application, permission và version

Dưới đây là nội dung của một file AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="org.me.mysudokugame"

android:versionCode="1"

android:versionName="1.0"

<uses-sdk android:minSdkVersion="8" />

<application

android:icon="@drawable/ic_launcher"

android:label="@string/app_name"

Ngày đăng: 22/06/2016, 18:42

HÌNH ẢNH LIÊN QUAN

Sơ đồ chức năng, lưu đồ giải thuật giải quyết vấn đề   (0.5 điểm) - Lập trình game sudoku trên Android
Sơ đồ ch ức năng, lưu đồ giải thuật giải quyết vấn đề (0.5 điểm) (Trang 1)
Hình 2.1: Cấu trúc stack hệ thống Android. - Lập trình game sudoku trên Android
Hình 2.1 Cấu trúc stack hệ thống Android (Trang 7)
Hình 2.2: Android Emulator. - Lập trình game sudoku trên Android
Hình 2.2 Android Emulator (Trang 10)
Hình 2.2: Android Emulator. - Lập trình game sudoku trên Android
Hình 2.2 Android Emulator (Trang 14)
Hình 2.2: Activity Stack. - Lập trình game sudoku trên Android
Hình 2.2 Activity Stack (Trang 15)
Hình 2.2: Chu kỳ sống của Activity. - Lập trình game sudoku trên Android
Hình 2.2 Chu kỳ sống của Activity (Trang 17)

TỪ KHÓA LIÊN QUAN

w