android:
id="@+id/empty"
android:
layout_width="wrap_content"
android:
layout_height="wrap_content"
android:
gravity="center_vertical"
android:
text="暂时没有数据显示"/>
3.String
xmlversion="1.0"encoding="utf-8"?
>
HelloWorld,MainActivity!
记事本程序
四、小结(问题及收获)
“电话本”的实现,可以添加,方法源码有调用可以实现这个功能。
实验科目
智能移动终端软件开发
实验题目
实验四:
音频播放器
实验地点
5-502
实验日期
5-12
机器号
27
一、实验目的
用智能移动终端软件开发实现音频播放器。
二、实验内容
设计一个音频播放器。
三、实验步骤及结果
1.string.xml
xmlversion="1.0"encoding="utf-8"?
>
HelloWorld,MainActivity!
音频播放器
音频文件的名称
播放
暂停
重播
停止
继续
2.MainActivity
packagenet.lightwinner.audio;
importjava.io.File;
importjava.io.IOException;
importandroid.app.Activity;
importandroid.media.MediaPlayer;
importandroid.os.Bundle;
importandroid.os.Environment;
importandroid.util.Log;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.EditText;
publicclassMainActivityextendsActivity{
privatestaticfinalStringTAG="MainActivity";
privateButtonbtnPlay;
privateButtonbtnPause;
privateButtonbtnReset;
privateButtonbtnStop;
privateEditTextfilename_field;
privateMediaPlayermediaPlayer;
privateintposition;
/**Calledwhentheactivityisfirstcreated.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
filename_field=(EditText)this.findViewById(R.id.filename);
btnPlay=(Button)this.findViewById(R.id.play);
btnPause=(Button)this.findViewById(R.id.pause);
btnReset=(Button)this.findViewById(R.id.reset);
btnStop=(Button)this.findViewById(R.id.stop);
mediaPlayer=newMediaPlayer();
BtnOnClickListenerlistener=newBtnOnClickListener();
btnPlay.setOnClickListener(listener);
btnPause.setOnClickListener(listener);
btnReset.setOnClickListener(listener);
btnStop.setOnClickListener(listener);
}
privatefinalclassBtnOnClickListenerimplementsOnClickListener{
@Override
publicvoidonClick(Viewv){
//TODOAuto-generatedmethodstub
Buttonbtn=(Button)v;
try{
switch(v.getId()){
caseR.id.play:
play();
break;
caseR.id.pause:
if(mediaPlayer.isPlaying()){
mediaPlayer.stop();
position=mediaPlayer.getCurrentPosition();
btn.setText(R.string.continues);
}else{
play();
mediaPlayer.seekTo(position);
btn.setText(R.string.pause);
position=0;
}
break;
caseR.id.reset:
play();
mediaPlayer.seekTo(0);
break;
caseR.id.stop:
if(mediaPlayer.isPlaying()){
mediaPlayer.stop();
}
break;
}
}catch(Exceptione){
//TODOAuto-generatedcatchblock
//e.printStackTrace();
Log.e(TAG,e.toString());
}
}}privatevoidplay()throwsIOException{
StringfileName=filename_field.getText().toString();
Filefile=newFile(Environment.getExternalStorageDirectory(),fileName);
mediaPlayer.reset();
mediaPlayer.setDataSource(file.getAbsolutePath());
mediaPlayer.prepare();//缓冲数据
mediaPlayer.start();
}
}
3.main
xmlversion="1.0"encoding="utf-8"?
>
android="
android:
orientation="vertical"
android:
layout_width="fill_parent"
android:
layout_height="fill_parent"
>
android:
layout_width="fill_parent"
android:
layout_height="wrap_content"
android:
text="@string/filename"
/>
android:
layout_width="fill_parent"