📄 audiorecord.java
字号:
import javax.microedition.midlet.*;
import javax.microedition.media.*;
import javax.microedition.media.control.*;
import javax.microedition.lcdui.*;
import java.io.*;
public class AudioRecord extends MIDlet implements CommandListener{
private Display display;
private Form form;
//程序中用到的命令
private final static Command start = new Command("Start", Command.ITEM, 1);
private final static Command stop = new Command("Stop", Command.ITEM, 1);
private final static Command exit = new Command("Exit", Command.EXIT, 1);
private Player recorder = null, player = null;
private RecordControl rc = null;
public AudioRecord(){
//创建程序的界面并设置命令
form=new Form("Audio Record");
form.addCommand(start);
form.addCommand(stop);
form.addCommand(exit);
form.setCommandListener(this);
}
public void startApp() {
display = Display.getDisplay(this);
display.setCurrent(form);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable s){
if(c == start) {
try{
//开始录音
if(recorder == null){
//创建用于录音的Player
recorder = Manager.createPlayer("capture://audio");
recorder.realize();
//得到控制录音过程的RecordControl
rc = (RecordControl)recorder.getControl("RecordControl");
//设置录音输出位置
rc.setRecordLocation("file:/audio.wav");
//开始录音
rc.startRecord();
recorder.start();
}
}
catch(MediaException me){
me.printStackTrace();
}
catch(java.io.IOException ioe){
ioe.printStackTrace();
}
}
else if(c == stop) {
//停止录音
try{
if(recorder!=null){
recorder.stop();
rc.stopRecord();
rc.commit();
recorder.close();
recorder=null;
}
}
catch(MediaException e){
e.printStackTrace();
}
catch(java.io.IOException ioe){
ioe.printStackTrace();
}
}
else if(c == exit) {
//释放资源、退出程序
if(recorder!=null){
try{
rc.commit();
recorder.close();
}
catch(java.io.IOException ioe){
ioe.printStackTrace();
}
}
if(player!=null){
player.close();
}
destroyApp(false);
notifyDestroyed();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -