zoukankan      html  css  js  c++  java
  • 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;
    			}			
    		}		
    	}
    }
    

    效果如图:

    image

  • 相关阅读:
    LeetCode 11. Container With Most Water
    LeetCode 10 Regular Expression Matching
    LeetCode 9 Palindrome Number
    LeetCode 8 String to Integer (atoi)
    从ASP.NET Core 3.0 preview 特性,了解CLR的Garbage Collection
    HttpClient参观记:.net core 2.2 对HttpClient到底做了神马
    LeetCode 7 Reverse Integer
    《地久天长》观影笔记
    《小丑》观后感
    粒子群基本算法学习笔记
  • 原文地址:https://www.cnblogs.com/vaiyanzi/p/2112657.html
Copyright © 2011-2022 走看看