avmanager.java

来自「 一款改造的J2me手机游戏项目」· Java 代码 · 共 104 行

JAVA
104
字号
package com.ejoy;

import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.media.Manager;
import javax.microedition.media.MediaException;
import javax.microedition.media.Player;
import javax.microedition.media.control.VolumeControl;
//Download by http://www.codefans.net
public class AVManager {

	private Player player=null;
	private VolumeControl volcon;
	private GameMIDlet m_gm;
	
	public final static String MEDIA_TYPE_MIDI="audio/midi";
	public final static String MEDIA_TYPE_MPEG="audio/mpeg";
	public final static String MEDIA_TYPE_WAV="audio/x-wav";
	
	
	public AVManager(GameMIDlet gm)
	{
		m_gm=gm;
	}
	
	
	
	public void createPlayer(String path,String type)
	{
		
		try
		{
			player=Manager.createPlayer(getClass().getResourceAsStream(path),type);
			
		}
		catch(Exception e)
		{
			
			e.printStackTrace();
		}
		
	}
	
	
	public void init()
	{
		try
		{
			player.realize();
		}
		catch(MediaException me)
		{
			me.printStackTrace();
		}
		volcon=(VolumeControl)player.getControl("VolumeControl");
		if(volcon!=null)
		{
			volcon.setLevel(50);
		}
	}
	
	
	public void setVolumeNum(int num)
	{		
		volcon.setLevel(num);
	}
	
	
	public void play()
	{
		if(player!=null)
		{
			try
			{
				player.prefetch();
				player.start();
			}
			catch(Exception e)
			{
				e.printStackTrace();
			}
		}
		else
		{
			m_gm.disp.setCurrent(new Alert("错误","player对象未能成功创建",null,AlertType.ERROR));
		}
	}
	
	
	public void releaseMediaResource()
	{
		try
		{
			player.stop();
		}catch(Exception e)
		{
			e.printStackTrace();
		}
		player=null;
		volcon=null;
		System.gc();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?