RawResTest--訪問assets下的資源

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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章