本地文件就是指文件放在Android系统的外部存储设备(如:SD卡)和内部设备上的文件,SD卡比较方便,容易更新音频文件,适合于以娱乐为主的应用系统。下面看看播放本地音频文件的代码请参考代码清单12-2,完整代码请参考Chapter12_2工程中AudioPlayer代码部分。
【代码清单12-2】
private void play() {
File sdCardDir = Environment.getExternalStorageDirectory();
String path = sdCardDir.getPath() + "/Lover's Concerto.mp3";
try {
if (mMediaPlayer == null || state == STOP) {
// 创建MediaPlayer对象并设置Listener
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setOnPreparedListener(preListener);
} else {
// 复用MediaPlayer对象
mMediaPlayer.reset();
}
mMediaPlayer.setDataSource(path);
mMediaPlayer.prepare();
} catch (Exception e) {
e.printStackTrace();
}
}
资源文件和本地文件的差别就在于play()方法中的mMediaPlayer = new MediaPlayer(),而不是MediaPlayer.Create(),然后设置预处理监听器,设置setDataSource(path),其中的path是指定的音频文件,这里放置SD卡中的MP3文件,mMediaPlayer.prepare()开始预处理。播放流程如图12-6所示。
图12-6播放流程
如果把文件放入到模拟器的SD卡?如图12-7所示“File Explorer”中右上角的 按钮可以把数据从开发机push到模拟器的SD卡。相反如果需要可以使用 按钮把文件从模拟器pull开发机中。
图12-7 File Explorer
出自《Android开发案例驱动教程》
- 大小: 29.2 KB
- 大小: 65.2 KB
分享到:
相关推荐
在Android开发中,多媒体处理是应用功能的重要组成部分,尤其是音频播放。`MediaPlayer`类是Android提供的一个核心组件,专门用于播放各种音频文件。本篇将深入讲解如何使用`MediaPlayer`来实现音频播放,并通过示例...
`MediaPlayer`不仅可以播放本地存储的音频文件,还能处理网络流媒体资源。 首先,了解`MediaPlayer`的基本结构和生命周期至关重要。`MediaPlayer`对象经历多个状态,包括初始化(Idle)、预加载(Prepared)、播放...
2. **头文件和库**:NDK提供了Android系统的API头文件和必要的库文件,使得开发者可以访问Android系统服务,如硬件设备、多媒体、网络等。 3. **构建系统**:如Build.Gradle插件,使得在Android Studio中可以方便地...
综上所述,Android多媒体开发涉及多个层次,从简单的播放控制到复杂的音视频处理,都需要深入理解和熟练运用相关API。同时,随着技术的发展,开发者还需要关注新的框架和最佳实践,以提供更优质、高效的多媒体体验。
对于"android开发ExoPlayer播放视频和wav音频"这个主题,我们将深入探讨如何在Android应用中集成和使用ExoPlayer来播放视频和.wav音频文件。 首先,要添加ExoPlayer库到项目中,我们需要在build.gradle文件的...
【Android多媒体框架与开发应用框架】 在Android系统中,多媒体框架是实现音频、视频和图像处理的核心组件,而应用框架则是开发者构建应用程序的基础。本文将深入解析这两个关键领域的概念和工作原理。 一、...
本文将深入探讨Android多媒体应用的核心组件,包括MediaPlayer、SoundPool以及VideoView,并介绍如何设置媒体控制器来实现流畅的视频播放体验。 首先,我们来看一下`MediaPlayer`,它是Android系统提供的一个用于...
总之,Android NDK R20B为64位Windows用户提供了便捷的本地开发环境,尤其在与cygwin和FFmpeg结合时,能够在Android平台上实现高效、复杂的视频编辑功能。通过熟练掌握NDK的使用,开发者可以充分利用C和C++的性能...
本节将深入探讨Android多媒体开发的高级编程技巧,帮助开发者实现更高效、更丰富的多媒体应用。 1. **多媒体框架概述** Android的多媒体框架基于开放移动联盟(OMA)的开放移动 Alliance Digital Media ...
总的来说,《Android多媒体开发高级编程》这本书将引导读者掌握Android平台上多媒体应用开发的核心技术,包括图形、音乐和视频的处理、播放、录制和编码。通过学习,开发者不仅可以创建引人入胜的多媒体应用,还能...
在Android平台上,开发一款应用并实现音频文件播放是一项常见的任务。本教程将深入探讨如何利用Android内置的音乐播放器来播放音频文件,这种方式无需我们自行编写复杂的音频播放逻辑,极大地简化了开发流程。 首先...
在Android平台上,多媒体...总结来说,`Android MediaPlayer`是Android平台多媒体开发的重要部分,理解和熟练使用它可以创建功能丰富的音乐和视频播放应用。同时,合理利用第三方`jar`库可以进一步优化和扩展播放功能。
通过分析这个项目,开发者可以学习到如何构建一个功能齐全的MP3音乐播放器,理解Android多媒体框架的工作原理,以及如何处理Android系统的兼容性问题。同时,这也是一个很好的实践平台,帮助开发者提升Android应用...
本文将深入探讨Android多媒体开发的高级编程技术,并基于提供的资源——"Android多媒体开发高级编程及源码",来解析相关知识点。 1. **Android多媒体框架** Android系统提供了一个强大的多媒体框架,包括...
《Android多媒体应用开发实战详解:图像、音频、视频、2D和3D》是一本针对Android平台多媒体开发的详尽指南,旨在帮助Android程序员、研发人员以及对此领域感兴趣的爱好者掌握核心技能,从基础到高级,从理论到实践...
在Android应用开发中,MediaPlayer类是用于播放各种音频和视频资源的核心组件。在这个特定的示例中,我们关注的是如何...对于初学者来说,这个示例是一个很好的起点,有助于理解和掌握Android多媒体播放的基本操作。
10. **多媒体数据缓存**:为了提高用户体验,可能会采用本地缓存策略,如使用SQLite数据库或者文件系统存储部分视频数据。 11. **编解码格式支持**:不同的设备可能支持不同的视频和音频编码格式,如H.264、AAC等,...
`MediaPlayer`可以播放本地或网络上的音频文件,支持多种音频格式,并具有丰富的控制功能,如暂停、停止、快进、快退等。 然而,`MediaPlayer`并不适合所有情况,尤其是在游戏开发中,它存在资源占用高、延迟时间长...
4. **多媒体支持**:测试音频、视频编码解码以及流媒体播放的兼容性,确保不同格式的媒体文件能在设备上正常播放。 5. **电源管理**:检查设备的电池管理、休眠模式和唤醒机制是否符合规范。 6. **安全性测试**:...