Android编程实现播放MP3功能示例

发布时间 - 2026-01-10 23:13:20    点击率:

本文实例讲述了Android编程实现播放MP3功能。分享给大家供大家参考,具体如下:

在android中播放mp3非常简单,也是项目中经常使用的,比如说要做项目的背景音乐,应用中某些功能的提示音等的。应用非常广泛,下面提供一个简单的使用实例:

layout文件的配置:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="wrap_content"
 android:orientation="vertical"
 android:layout_height="wrap_content">
 <Button android:text="播放" android:id="@+id/btnStart"
    android:layout_width="fill_parent" android:layout_height="wrap_content">
  </Button>
  <Button android:text="停止" android:id="@+id/btnStop"
    android:layout_width="fill_parent" android:layout_height="wrap_content">
  </Button>
</LinearLayout>

java实现文件:

/**
 *
 */
package com.demo.media;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import com.demo.HelloWorld.R;
/**
 * @author xsl
 * vaiyanzi@gmail.com
 * 实现MP3播放功能
 */
public class mediademo extends Activity {
  private Button btnStart,btnStop;
  private static MediaPlayer mediaPlayer=null;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.media);
    btnStart = (Button) this.findViewById(R.id.btnStart);
    btnStart.setOnClickListener(new ButtonListener());
    btnStop = (Button) this.findViewById(R.id.btnStop);
    btnStop.setOnClickListener(new ButtonListener());
  }
  class ButtonListener implements OnClickListener{
    public void onClick(View v) {
      switch(v.getId()){
      case R.id.btnStart:
        if(mediaPlayer==null){
          //创建播放实例
          mediaPlayer=MediaPlayer.create(mediademo.this, R.raw.tishiyin);
        }
        try {
          //设置是否循环播放
          mediaPlayer.setLooping(true);
          //设置播放起始点
          mediaPlayer.seekTo(0);
          //开始播放
          mediaPlayer.start();
        } catch (IllegalStateException e) {
          e.printStackTrace();
        } catch (Exception e) {
          e.printStackTrace();
        }
        break;
      case R.id.btnStop:
        if(mediaPlayer!=null){
          //停止播放
          mediaPlayer.stop();
          //释放资源
          mediaPlayer.release();
          mediaPlayer=null;
        }
        break;
      }
    }
  }
}

效果如图:

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android Service组件使用技巧总结》、《Android编程之activity操作技巧总结》、《Android资源操作技巧汇总》、《Android文件操作技巧汇总》、《Android开发入门与进阶教程》、《Android视图View技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。


# Android  # 播放  # MP3  # 利用libmp3lame实现在Android上录音MP3文件示例  # 详解Android应用开发--MP3音乐播放器代码实现(一)  # Android实现使用流媒体播放远程mp3文件的方法  # 比较完整的android MP3 LRC歌词滚动高亮显示(附源码)  # Android递归方式删除某文件夹下的所有文件(.mp3文件等等)  # Android录制mp3格式文件  # 操作技巧  # 进阶  # 相关内容  # 感兴趣  # 要做  # 给大家  # 如图  # 提供一个  # 更多关于  # 所述  # 程序设计  # 使用技巧  # 提示音  # 起始点  # 讲述了  # orientation  # wrap_content  # vertical  # Button  # layout_height 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 再谈Python中的字符串与字符编码(推荐)  Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  软银砸40亿美元收购DigitalBridge 强化AI资料中心布局  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  EditPlus中的正则表达式 实战(2)  Laravel怎么在Controller之外的地方验证数据  Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧  Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】  网站优化排名时,需要考虑哪些问题呢?  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  实现点击下箭头变上箭头来回切换的两种方法【推荐】  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  Laravel如何实现用户密码重置功能?(完整流程代码)  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Laravel如何使用Livewire构建动态组件?(入门代码)  在线教育网站制作平台,山西立德教育官网?  JavaScript如何实现路由_前端路由原理是什么  Linux网络带宽限制_tc配置实践解析【教程】  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】  Java类加载基本过程详细介绍  如何快速选择适合个人网站的云服务器配置?  Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】  Win11怎么设置默认图片查看器_Windows11照片应用关联设置  Laravel如何使用Blade组件和插槽?(Component代码示例)  Laravel如何使用Eloquent进行子查询  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  🚀拖拽式CMS建站能否实现高效与个性化并存?  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】  PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)  php json中文编码为null的解决办法  JavaScript如何实现继承_有哪些常用方法  如何在企业微信快速生成手机电脑官网?  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  Laravel用户密码怎么加密_Laravel Hash门面使用教程  如何快速搭建自助建站会员专属系统?  javascript基本数据类型及类型检测常用方法小结  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  北京企业网站设计制作公司,北京铁路集团官方网站?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?