package com.example.musicplaye429r;
import androidx.appcompat.app.AppCompatActivity;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.os.Handler;
import android.widget.ImageView;
import android.widget.SeekBar;
import android.widget.TextView;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
private String tingzhi = "tingzhi";
private String bofang = "bofang";
private String zhanting = "zhanting";
private String isPause = tingzhi;
private TextView mTvPressStart;
private TextView mTvPressFinal;
private ImageView mBtnPlayUrl;
private SeekBar mSkbProgress;
private MediaPlayer player;
private Uri mUri;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTvPressStart = findViewById(R.id.tv_jindu_tou);
mTvPressFinal = findViewById(R.id.tv_jindu_wei);
player = MediaPlayer.create(this, R.raw.m01);
mBtnPlayUrl = findViewById(R.id.btnPlayUrl);
mSkbProgress = findViewById(R.id.skb_Progress);
mTvPressFinal.setText(getTime(player.getDuration()));
mSkbProgress.setMax(player.getDuration());
//mUri = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.m01);
// player.start();
setListener();
}
private void setListener() {
mBtnPlayUrl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
handler.post(updateThread);
if (isPause.equals(tingzhi)){
player.start();
handler.post(updateThread);
isPause=bofang;
}else if (isPause.equals(zhanting)){
player.start();
isPause=bofang;
}else {
player.pause();
isPause=zhanting;
}
}
});
}
//新线程实时刷新进度条
Handler handler = new Handler();
Runnable updateThread = new Runnable() {
@Override
public void run() {
mTvPressStart.setText(getTime(player.getCurrentPosition()));
mSkbProgress.setProgress(player.getCurrentPosition());
handler.postDelayed(updateThread, 100);
}
};
//播放在线音乐
public void playUrl(Uri videoUrl) {
try {
player.reset();
player.setDataSource(this, videoUrl);
player.prepare();
player.start();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public String getTime(int a){
int min = (a/10000)/6;
int s =(a/1000)%60;
String ll = min+":"+s;
return ll;
}
}
2021-04-29
最新推荐文章于 2021-04-29 11:49:12 发布