`
yesjavame
  • 浏览: 688500 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

Android学习笔记(12)-开始做一个数独游戏[补充]

阅读更多
再补充一点吧,如果需要给游戏加上背景音乐,其实也是非常容易的事情。因为Android提供了一个 MediaPlayer类可以方便的播放音乐文件。

android.media.MediaPlayer类没有构造函数,一般是用它的静态方法create生成实例,简单地告诉它音乐文件的资源ID即可(支持mp3/wav/midi等)。

首先,我们得建立一个Service,就叫MediaService吧,它的代码如下:
publicclassMediaServiceextendsServiceimplementsMediaPlayer.OnErrorListener,MediaPlayer.OnCompletionListener,MediaPlayer.OnPreparedListener...{

......

privateMediaPlayerplayer;

@Override
protectedvoidonDestroy()...{
//TODOAuto-generatedmethodstub
super.onDestroy();
if(player!=null)...{
player.stop();
player.release();
}

}


@Override
protectedvoidonStart(intstartId,Bundlearguments)...{
//TODOAuto-generatedmethodstub
Log.d("Media","onStart");

player
=MediaPlayer.create(this.getApplication(),R.raw.tonhua);
if(player!=null)...{
player.setAudioStreamType(AudioSystem.STREAM_MUSIC);

player.setOnCompletionListener(
this);
player.setOnPreparedListener(
this);
player.setOnErrorListener(
this);

player.prepareAsync();
}

}


@Override
publicvoidonCompletion(MediaPlayerarg0)...{
//TODOAuto-generatedmethodstub
Log.d("Media","finished.");
}


@Override
publicvoidonPrepared(MediaPlayerarg0)...{
//TODOAuto-generatedmethodstub
Log.d("Media","prepared.");
player.start();
}


@Override
publicvoidonError(MediaPlayerarg0,intwhat,intextra)...{

Log.d(
"Media","onError");
player.stop();
}

}

这个服务主要就是用一个MediaPlayer去播放资源中的tonghua(一首MP3音乐)。次序一般是先create出这个实例,然后prepare一下(如果是文件直接prepare,如果是流则最好异步parepareAsync),接着就可以start了,同步可以直接start,异步则必须放到onPrepared中再start。

在MainActivity中启动这个服务即可。
mediaServiceIntent=newIntent();
mediaServiceIntent.setClass(
this,MediaService.class);

this.startService(mediaServiceIntent,newBundle());

当前,在Activity停止时也别忘了将这个Service停掉,而在Service停止时关掉MediaPlayer。

在模拟器上试了,效果不是太好,声音有点断断续续,不知道是不是我的解码器的问题(Vista系统)。


分享到:
评论

相关推荐

    本科毕业设计---基于android平台的数独游戏.doc

    基于 Android 平台的数独游戏设计与实现是一个复杂的过程,需要扎实的编程基础和良好的设计能力。通过本资源摘要信息,我们可以了解数独游戏的基本概念、Android 平台的开发环境、游戏的设计与实现、游戏的测试与 ...

    毕业论文--于基android的数独游戏程序设计.doc

    "毕业论文--基于Android的数独游戏程序设计" 本论文主要阐述了基于Android系统的数独游戏程序设计,利用面向对象的程序开发语言和Eclipse开发工具,实现了一款完整的数独游戏。下面是本论文中所涉及的知识点: 1. ...

    安卓Android源码——数独游戏源码.rar

    本文将深入探讨这些关键点,帮助开发者理解如何从源码层面构建一个完整的数独游戏。 1. **Android Studio与项目结构** - Android Studio是Google提供的集成开发环境(IDE),用于编写Android应用程序。数独游戏...

    cocos2d-x3.9 数独小游戏

    【cocos2d-x3.9 数独小游戏】是一个基于cocos2d-x 3.9版本开发的经典数独游戏源代码,适用于初学者进行学习和实践。cocos2d-x是一个跨平台的2D游戏开发框架,它采用C++语言,支持多种操作系统,如iOS、Android、...

    Android数独游戏源码

    这个"Android数独游戏源码"是一个很好的学习资源,适合对Android开发和数独游戏算法感兴趣的开发者。 首先,让我们了解一下Android开发的基础知识。Android是Google推出的一个开源移动操作系统,主要应用于智能手机...

    Android应用源码之数独游戏源码-IT计算机-毕业设计.zip

    在这款Android应用源码中,我们可以学习到如何利用Java语言和Android SDK来实现这样一个互动的游戏。 首先,我们要理解Android应用的基本架构。源码通常会包含以下几个部分:`MainActivity.java`是应用程序的主要...

    Android 数独 游戏 源码

    本源码实例为初学者提供了一个良好的起点,让您逐步掌握Android游戏开发的基础。 一、项目结构 在"Android 数独 游戏 源码"中,主要包含以下几个关键部分: 1. `res` 文件夹:存储应用程序的资源,如布局文件、...

    Android 数独游戏工程源码

    在本资源中,我们主要探讨的是一个Android平台上开发的数独游戏源代码。这个项目是Android3系列教程的一部分,特别关注于数独游戏的开发。通过分析和学习这个源码,开发者可以深入了解如何在Android环境下构建一款...

    Android代码-数独游戏

    3. **Activity与布局**: 数独游戏的主界面通常由一个`Activity`管理,其中包含用于显示数独盘面的布局。布局文件通常使用XML编写,例如`activity_sudoku.xml`,里面可能包含了`GridLayout`或`TableLayout`来模拟数独...

    Android数独游戏开发

    【Android数独游戏开发】是针对移动平台,特别是Android系统的一款益智类游戏项目。数独游戏因其逻辑性和趣味性,深受广大用户喜爱,而基于Android平台开发的数独游戏,可以让玩家在智能手机或平板电脑上随时随地...

    c++趣味编程------数独

    c++趣味编程------数独 无解释 可以自己改代码 无bug

    android数独游戏源码

    在Android平台上开发数独游戏,可以提供给用户一个便捷的移动平台进行游戏体验。本文将详细解析一款基于Eclipse开发的Android数独游戏源码——"NumberPlace2"。 1. **项目结构** - `res`: 资源文件夹,包括布局...

    android 数独游戏源码

    总的来说,这个 Android 数独游戏源码是一个很好的学习案例,可以帮助开发者了解如何在 Android 上构建一个完整的应用,包括界面设计、逻辑处理以及数据管理等多个方面。通过对源码的阅读和分析,可以提升对 Android...

    android简单数独游戏

    总的来说,开发一个Android简单数独游戏,需要掌握Android应用的基本架构、UI设计、数据处理、用户交互以及一些算法知识,如回溯法。这个过程不仅能够提升编程技能,也能带来设计和实现游戏的乐趣。

    基于Android的数独游戏

    在本项目中,`MySudoku`可能包含一个用于展示数独盘面的自定义View,这个View可能继承自`View`或`ImageView`,并在其中绘制9x9的格子。每个小格子可以通过相对布局或者网格布局进行定位,按钮用于清除、提交答案等...

    网络游戏-一种多功能数独游戏盒.zip

    综上所述,“网络游戏-一种多功能数独游戏盒”不仅是一个娱乐工具,也是一个锻炼逻辑思维、提高问题解决能力的平台。通过这款软件,玩家不仅可以享受数独游戏带来的挑战和乐趣,还可以在不断的实践中提升自己的智力...

    android入门的数独小游戏

    总的来说,"android入门的数独小游戏"项目是学习Android编程的一个好例子,它涵盖了基本的UI设计、用户交互、数据结构、逻辑判断等多个方面,对于初学者来说,完成这个项目不仅能够掌握Android开发的基本技能,也能...

    网络游戏-一种九宫盲文数独游戏盘.zip

    《网络游戏-一种九宫盲文数独游戏盘》是一个针对视障人士设计的创新性游戏,结合了传统的九宫格数独玩法与盲文系统,旨在提供一个无视觉障碍的游戏体验。这款游戏盘的设计充分考虑了无障碍游戏的需求,使得视障玩家...

Global site tag (gtag.js) - Google Analytics