package org.crazyit.res;
import java.io.IOException;
import android.app.Activity;
import android.content.res.AssetFileDescriptor;
import android.content.res.AssetManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
/**
* Description: <br/>
* site: <a href="http://www.crazyit.org">crazyit.org</a> <br/>
* Copyright (C), 2001-2012, Yeeku.H.Lee <br/>
* This program is protected by copyright laws. <br/>
* Program Name: <br/>
* Date:
*
* @author Yeeku.H.Lee [email protected]
* @version 1.0
*/
public class RawResTest extends Activity
{
MediaPlayer mediaPlayer1 = null;
MediaPlayer mediaPlayer2 = null;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 直接根據聲音文件的ID來創建MediaPlayer。
mediaPlayer1 = MediaPlayer.create(this, R.raw.bomb);
// 獲取該應用的AssetManager
AssetManager am = getAssets();
try
{
// 獲取指定文件對應的AssetFileDescriptor。
AssetFileDescriptor afd = am.openFd("shot.mp3");
mediaPlayer2 = new MediaPlayer();
// 使用MediaPlayer加載指定的聲音文件。
mediaPlayer2.setDataSource(afd.getFileDescriptor());
mediaPlayer2.prepare();
}
catch (IOException e)
{
e.printStackTrace();
}
// 獲取第一個按鈕,併爲它綁定事件監聽器
Button playRaw = (Button) findViewById(R.id.playRaw);
playRaw.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
// 播放聲音
mediaPlayer1.start();
}
});
// 獲取第二個按鈕,併爲它綁定事件監聽器
Button playAsset = (Button) findViewById(R.id.playAsset);
playAsset.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
// 播放聲音
mediaPlayer2.start();
}
});
}
}
assets/shot.mp3