播放网络音乐的播放器
来源:互联网 发布:6s移动数据 打不开 编辑:程序博客网 时间:2024/05/03 12:44
博主这里测试直接用的局域网,使用tomcat,使用局域网最重要的是获取ip 话不多说直接上代码,有不懂的可以问博主哦,常在释疑
布局代码
<SeekBar android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/seekBar" android:layout_weight="1" /> <ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/ib_main_imageButton" android:src="@android:drawable/ic_media_play"/>
访问网络需要权限,清单文件中添加权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>
主要代码
public class MainActivity extends AppCompatActivity { private SeekBar seekBar; private ImageButton ib_main_imageButton; private MediaPlayer mediaPlayer; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); seekBar = (SeekBar) findViewById(R.id.seekBar); ib_main_imageButton = (ImageButton) findViewById(R.id.ib_main_imageButton); seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int i, boolean b) { } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onStopTrackingTouch(SeekBar seekBar) { int progress = seekBar.getProgress(); mediaPlayer.seekTo(progress); } }); ib_main_imageButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (mediaPlayer == null) { //实例化MediaPlayer //播放内存中的音乐 //mediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.music); //播放内存卡中的音乐 mediaPlayer = new MediaPlayer(); //设置音源 try { //内存卡// mediaPlayer.setDataSource(getApplicationContext(), Uri.parse("file://mnt/sdcard/data/meng.mp3")); //网络 mediaPlayer.setDataSource(getApplicationContext(), Uri.parse("http://192.168.43.135/meng.map3")); } catch (IOException e) { e.printStackTrace(); } //设置类型 mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); //这里要注意 需要准备一下 try { //准备(内存卡) mediaPlayer.prepare(); //准备(网络) mediaPlayer.prepareAsync(); } catch (IOException e) { e.printStackTrace(); } mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mediaPlayer) { mediaPlayer.start(); //把图标修改为暂停的图标 ib_main_imageButton.setImageResource(android.R.drawable.ic_media_pause); //获取音乐的总时长 int duration=mediaPlayer.getDuration(); //设置进度条的最大值为音乐的总时长 seekBar.setMax(duration); new MyThread().start(); } }); } else if (mediaPlayer.isPlaying()) { mediaPlayer.pause(); //把图标修改成播放图标 ib_main_imageButton.setImageResource(android.R.drawable.ic_media_play); } else { mediaPlayer.start(); //把图标修改成暂停图标 ib_main_imageButton.setImageResource(android.R.drawable.ic_media_pause); } } }); } class MyThread extends Thread { @Override public void run() { super.run(); while (seekBar.getProgress() <= seekBar.getMax()) { //获取播放音乐的当前位置 int currentPosition = mediaPlayer.getCurrentPosition(); //让进度条动起来 seekBar.setProgress(currentPosition); } } }}
2 0
- 播放网络音乐的播放器
- 网络音乐播放器
- Android音乐播放器的播放实例
- 音频的播放、简单音乐播放器
- android播放网络音乐
- 播放网络音乐
- 音乐网络播放
- 基于android的网络音乐播放器-回调实现音乐播放及音乐收藏的实现(三)
- 基于android的网络音乐播放器-播放音乐及收藏音乐的效果展示(四)
- 22_Android中的本地音乐播放器和网络音乐播放器的编写,本地视频播放器和网络视频播放器,照相机案例,偷拍案例实现
- 使用react native制作的一款网络音乐播放器
- 使用react native制作的一款网络音乐播放器
- 简单的播放应用内音乐的音乐播放器
- 小的音乐播放器
- 音乐播放器的代码
- 简易的音乐播放器
- 自己的音乐播放器
- 简单的音乐播放器
- Java线程:线程的调度-合并
- POJ 3994 Probability One G++
- Java线程:线程的调度-守护线程
- 欢迎使用CSDN-markdown编辑器
- Neural Machine Translation(NMT)技术概述
- 播放网络音乐的播放器
- Java线程:线程的同步-同步方法
- spring-boot 集成 Swagger 搭建RESTful API
- 当初为蜂巢样式实验过的方法
- Java线程:线程的同步-同步块
- 遇见InterruptedException异常,怎么办?
- 网站初始——软件
- Android 6.0 修改系统权限分析(二)
- Bubble sort