Android音乐播放器的播放进度条(转)

Android Studio音乐播放器 简单的音乐播放器,因为之前在上课的时候做了一半回去用自己电脑做,Android的版本不一样导致了音乐播放不出来,花了一下午时间调试,今天拿出来复习了一遍。分享一些心得 音乐播放器主要通过service后台服务和线程实现的。 服务是一个后台运行的组件,执行长时间运行且不需要用户交互的任务。即使应用被销毁也依然可以工作。 音乐播放器主要实现是由starservice实现的,首先先设置界面布局,打造一个... 阅读详情

音乐播放是MediaPlayer这个类控制的,进度条SeekBar可以用来显示播放进度,用户也可以利用SeekBar的滑块来控制音乐的播放。两个按钮一个用来播放歌曲启动线程,另一个取消线程和停止播放歌曲。

SeekBar:

设置滑块的位置方法为:setProgress(int value);

设置最大值的方法为:setMax(int value);

MusicPlayer:

播放音乐方法为:start();

停止音乐播放的方法为:stop();

控制音乐播放位置为:seekTo(int value);

获得音乐长度为:getDuration();

获得现在播放的位置:getCurrentPosition();

Handler:

启动线程:post(Runnable runnable);

取消线程:removeCallbacks(Runnable runnable);

延迟启动线程(time 单位为毫秒):postDelayed(Runnable, int time);

代码如下:

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.widget.Button;
import android.widget.SeekBar;
public class Test extends Activity {
 
 private Button button1;
 private Button button2;
 private SeekBar seekBar1;
 private MediaPlayer player;
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        init();
        findView();
        setListener();
    }
    
    private void init() {
     player = MediaPlayer.create(this, R.drawable.example);
    }
    private void findView() {
     button1 = (Button)findViewById(R.id.button1);
     button2 = (Button)findViewById(R.id.button2);
     seekBar1 = (SeekBar)findViewById(R.id.seekbar1);
     //获得歌曲的长度并设置成播放进度条的最大值
  seekBar1.setMax(player.getDuration());
    }
    
    Handler handler = new Handler();
    Runnable updateThread = new Runnable(){
     public void run() {
      //获得歌曲现在播放位置并设置成播放进度条的值
        seekBar1.setProgress(player.getCurrentPosition());
      //每次延迟100毫秒再启动线程
      handler.postDelayed(updateThread, 100);
     }
    };
    
    private void setListener() {
     button1.setOnClickListener(new Button.OnClickListener(){
   @Override
   public void onClick(View arg0){
          player.start();
          //启动
    handler.post(updateThread);
   }  
     });
     button2.setOnClickListener(new Button.OnClickListener(){
   @Override
   public void onClick(View arg0) {
    player.stop();
    //取消线程
    handler.removeCallbacks(updateThread);
   } 
     });
     seekBar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
   @Override
   public void onProgressChanged(SeekBar seekBar, int progress,
     boolean fromUser) {
    // fromUser判断是用户改变的滑块的值
    if(fromUser==true){
     player.seekTo(progress);
    }
   }
   @Override
   public void onStartTrackingTouch(SeekBar seekBar) {
    // TODO Auto-generated method stub
   }
   @Override
   public void onStopTrackingTouch(SeekBar seekBar) {
    // TODO Auto-generated method stub  
   }
     });
    }
                             
}

seekBar要绑定setOnSeekBarChangeListener()事件,三个方法第一个是滑块滑动时调用的,第二个是滑动开始滑动时调用的,第三个是滑动停止时调用的。

Android实现音乐播放器,Service后台播放&Notification控制播放状态 前言 优快云和百度上有许多关于做音乐播放器的资料,但是基本上都只是贴上主要代码或者是要积分/C币,考虑到音乐播放器是比较基础的项目,也只有新手或者对这方面不了解的人才会来系统的学习,因此本篇博客由浅及深讲解,并把最终代码献上。 本音乐播放器的功能: 1.实现访问手机本地的.mp3音乐文件 2.在主页中将访问的数据显示出来(这里简单点用ListView,用RecycleView当然也可以) 3.在... 阅读详情

相关推荐

Android开发 : 音乐播放器的实现

一、前言: 第一次做安卓的个人项目,还是比较轻松的,将平时学的知识用到点子上就好容易,遇到自己想实现的而且还不会的就上网自己查,或者去官网的安卓开发者手册读老英文,这一块是最耗实践的,我在项目中在添加随机播放,加入歌曲时间,用什么数据结构存储歌曲信息等地方花了很大精力去学习,毕竟网上的东西查到10篇有3篇是符合的,就一篇详细而且有用的,所以遇到自己不会的时候效率还是蛮低的。 二、功能介绍: 音乐播放器可以将手机SD卡中的音乐读取后加入到音乐播放器中,列出列表共听者欣赏,在音...

Aquarius_1的博客 3617

Android 音乐APP(三)播放音乐、自定义进度条、自动下一曲

Android 音乐APP 播放音乐前言正文① 修改布局 前言   作为音乐APP的主要功能,我放到了第三篇文章,因为播放音乐的功能并没有看上去那么简单,里面有很多细节是在写代码的时候就要考虑,并且加入到逻辑里面的,这可不是危言耸听,下面来看是怎样一个不简单吧。 正文   既然要做播放音乐的功能自然要好好的设计一下UI了,不然太难看我可拿不出手,于是我参考了QQ和网易的列表播放页面,合二为一就产生了下面这个页面   从这张图可以看出什么呢?首先播放布局不随页面滚动,一直固定在屏幕的底部,其次是播放的进度是

晨曦 3938

Android初学者指南:实现音乐播放器的进度条滑动和唱片转动功能

本文将向你介绍如何在Android应用中使用MediaPlayer类来播放音乐,并实现进度条滑动和唱片转动的效果。在上述代码中,当playButton被点击时,我们检查MediaPlayer的状态。至此,我们已经完成了Android音乐播放器的进度条滑动和唱片转动功能的实现。通过以上步骤,你可以在自己的Android应用中播放音乐,并实现类似的交互效果。上述代码中,我们定义了一个updateSeekBarRunnable对象,它会在每次执行时更新进度条的位置,并在一秒后再次执行自身。上述代码中,我们通过。

LogicGuruX的博客 685

Android音乐播放器进度条实现

首先在Activity中设置相应参数,如下: [code="java"] private ProgressBar pbar; private static final int REFRESH_TIME = 1; private long mPosOverride = -1; // Handler used to update the curre...

撸码猿的博客 2792

android音乐播放器中的进度条(音量控制+进度)

android音乐播放器中的进度条(音量控制+进度)

Android自定义View实现音频播放圆形进度条

主要为大家详细介绍了Android自定义View实现音频播放圆形进度条,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

安卓简易音乐播放器实现

文章目录一、参考文章二、功能说明三、重要代码说明1、存储权限读取2、指定歌曲路径,初始化MediaPlayer组件并使其进入准备状态3、进度条功能四、用到的MediaPlayer的方法总结五、完整代码1、activity_main.xml2、MainActivity.java3、不要忘记AndroidManifect也需要写明申请什么权限 一、参考文章 参考文章:Android音乐播放器的实现-简...

yogima的博客 1万+

STM32CubeMX定时器进阶玩法:用编码器模式实现电机转速测量(附避坑清单)

本文详细介绍了如何使用STM32CubeMX配置定时器的编码器模式实现电机转速测量,包括硬件连接、CubeMX配置关键步骤、转速计算算法及常见问题解决方案。特别针对工业控制和机器人开发中的高精度需求,提供了实用的避坑清单和优化技巧,帮助开发者高效完成项目。

joy55的博客 203

Android音乐播放器开发(5)—播放界面(播放、暂停、上一首、下一首,顺序播放、随机播放、拖拽进度条…)

到这一篇文章,就已经完成了服务端、登录、注册、修改密码和播放功能了,还差一个展示播放列表的功能。感兴趣的小伙伴们可以往前找找其他文章。程序已分享至gitee和github。

cun的博客 2万+

Doris StreamLoad任务报错Connection reset

背景 Spark程序扫一张Hive表(大小3-7G),然后用http协议的streamLoad任务提交给Doris集群,在Doris集群从0.13.15升级到0.14.12后spark程序报错streamLoad时突然会Connection reset 分析 enable_http_server_v2 这个参数可以参考FE中文配置中查看到,作用是对于Doris界面是否开启新风格的界面,但是实际上他的作用远不止如此,请接着看 新老版本对于enable_http_server_v2参数默认值是不同的 在0.13

gaofeng的博客 3308

Ansys-结构动力学分析-圆柱斜齿轮模态分析学习心得

模态分析的步骤基本一直,不同点在于选择什么单元类型,模型,节点约束等 圆柱斜齿轮模态分析的难点在于圆柱斜齿轮的模型建立,和所要约束的节点的选择。 用命令流方法建立齿轮模型效率较高,当然,在ansys里建立复杂的模型实在不敢恭维,对于自下而上建模,需要知道每个关键点的坐标位置。下图是创建圆柱斜齿轮模型的命令流方式。 模型不同使用的数据也就不同了。 对于施加约束的问题这就必须要熟悉select e...

weixin_45385183的博客 1831

移动开发第三次作业——Android Studio音乐播放器

Android Studio音乐播放器 一、本项目完成的功能 1.实现音乐播放器的基本功能:播放音乐,暂停音乐,停止音乐,切换到上一首或者下一首音乐 2.实现一些进阶功能:显示专辑封面、歌曲名称、歌手姓名和进度条 3.调整不同控件的位置、大小,使得整个软件界面看起来大方美观 二、代码部分 1.基本代码 初始化一些必要的值,例如音乐播放状态和歌曲名称列表。 public class MainActivity extends Activity implements OnClickListener { /

weixin_44738130的博客 1万+

分辨率太小 / Retina 模糊 / 全屏异常:一篇解决 VMware Fusion + Kali 显示问题(Xfce & GNOME 通用)

本文提供了在Mac(尤其是Retina屏)上运行Kali Linux时常见显示问题的完整解决方案。主要解决三类问题:分辨率太小、Retina屏模糊和全屏异常。核心思路是先安装open-vm-tools-desktop并重启,这是90%问题的根源。然后根据不同问题分别处理:调整DPI/Scale解决字体大小,避免双重缩放导致的模糊,以及通过窗口拉伸和重启解决全屏异常。文章还给出了针对Xfce和GNOME的最佳配置建议,并强调调试完成后应创建快照以便快速恢复。最后提供了速查表,方便用户快速参考关键步骤。

致力于分享在各类技术领域的学习与实践经验,涵盖编程、虚拟化、开源工具、网络安全等。 874

Android简单音乐播放器

话不多说先上效果 前言 写这个音乐播放器实在是迫不得已。因为我们Andoird课程要求写一个音乐播放器。所以就有了此项目。这个项目比较简单,实现了最基本的音乐播放功能,然后界面是仿照着网易云音乐的样式写的想写成一样但是技术不够QWQ。 基本的音乐播放 设置播放音乐文件 Android播放媒体文件大概都是使用MediaPlayer这个类来操作的。 在播放音乐前,必须要给这个MediaPlayer设...

当你在抱怨为什么没有时,请记住,这是你的机会! 5105

别再乱改宏定义了!STM32F103程序移植保姆级教程(从C8T6到ZET6实战)

本文详细解析了STM32F103程序从C8T6移植到ZET6的实战步骤,重点介绍了硬件差异、开发环境配置、时钟陷阱及外设处理等关键点。通过修改宏定义(如STM32F10X_HD)、调整启动文件和时钟配置,确保移植顺利进行。适合嵌入式开发者参考,避免常见移植问题。

weixin_42567497的博客 215

汽车UDS诊断之诊断会话控制服务(0x10)深度剖析

DiagnosticSessionControl就是诊断会话控制。 请求消息定义 A_Data类型 参数名称 Cvt 字节值 助记符 #1 诊断会话控制请求SID M 0x10 DSC #2 子功能=[诊断会话类型] M 0x00-0xFF LEV_DS_ ...

心骗小白话的博客 7419

android音乐播放器实现,Android实现简单音乐播放器(MediaPlayer)

Android实现简单音乐播放器(MediaPlayer),供大家参考,具体内容如下开发工具:Andorid Studio 1.3运行环境:Android 4.4 KitKat工程内容实现一个简单的音乐播放器,要求功能有:播放、暂停功能;进度条显示播放进度功能拖动进度条改变进度功能;后台播放功能;停止功能;退出功能;代码实现导入歌曲到手机SD卡的Music目录中,这里我导入了4首歌曲:仙剑六里面的...

weixin_33508642的博客 4935

按角色定制同一张 Fiori 画面:一篇讲透 SAP Fiori UI Adaptation for Roles 的版本、优先级、视图迁移与安全边界

摘要:SAP Fiori应用中常见的问题并非功能缺失,而是同一应用被不同岗位用于不同工作流时导致界面难以满足各方需求。SAP的"角色适配UI"机制允许在不修改后端逻辑或创建新应用的情况下,为不同角色定制界面呈现。该机制包含多套界面适配方案,按用户角色自动匹配显示,同时保持统一的应用入口。实施时需注意:适配方案与原始应用共享版本管理;需设置"默认界面层";多角色用户通过优先级机制确定显示方案;界面隐藏不等于权限控制,数据安全仍需后端保障。该方案能有效解决跨岗位的界面适配

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 147

Android之简单本地音乐播放器

平台:Android studio APK:http://fir.im/apps/56ea5187e75e2d69af000042 本地的音乐播放器,主要功能就是可以播放音乐,能够读取本地的音乐,并显示出来,播放,暂停,上一首,下一首,进度条可以拖拽播放,添加了前台service,看一下实现        首先我是先做了一个大概的布局,样子先出来,需要其他的空间后期再添加,毕竟一开始不

I_do_can的博客 5万+

AIGC游戏本地化:用AI实现多语言自动翻译

游戏本地化是游戏全球化战略的关键环节,传统人工翻译方式成本高、周期长。本文旨在探讨如何利用AIGC技术实现高效、准确、低成本的游戏多语言自动翻译解决方案。我们将覆盖从文本翻译到语音合成的完整本地化流程,重点关注AI技术在游戏特定语境下的应用优化。文章首先介绍游戏本地化的核心挑战和AI解决方案,然后深入讲解关键技术原理,接着通过实战项目演示具体实现,最后讨论应用场景和未来趋势。AIGC:人工智能生成内容,指利用AI技术自动生成文本、图像、音频等内容本地化(Localization)

AI 领航者的博客 1339

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

安卓开发个人小作品(3) - 多功能音乐播放器

这次介绍一个多功能音乐播放器,记得是大二那年寒假写的,实现的主要功能就是音乐播放,带进度条控制,扫描本地音乐,上一曲下一曲,播放类型(单曲循环,顺序播放,随机播放),APP主题换肤,背景图更换等,功能都比较基础,基本上如果你不会的话,跟着我的思路,应该都是能实现的,预计会在以后加入歌词的功能。 在开始前,先放一张最后的效果图吧,我个人喜欢的风格,简约,美观。 目录 1.实现扫描本地音乐 ...

黄庆庆的世界 2万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

小项目开发——Android 音乐播放器

Android原生开发音乐播放器

Re.Gin的博客 5836

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Android开发之音乐播放器

Android开发之音乐播放器

不服输的小乌龟 5908

Android开发---MediaPlayer简单音乐播放器

Android开发—MediaPlayer简单音乐播放器功能介绍 实现一个简单的播放器,类似网易云音乐形式,功能包括:播放、暂停,停止,退出功能; 后台播放功能; 进度条显示播放进度、拖动进度条改变进度功能; 播放时图片旋转,显示当前播放时间功能; 界面样式 功能实现1. MediaPlayer的实现 MediaPlayer常用方法介绍 MediaPlayer的实现包括初始化MediaPlaye

keep studying 3万+

Android studio 音乐播放器

在老师给的代码基础上做了一些改动 实验要求 音乐播放器添加音乐播放的 上一首 和 下一首 控制 将广播嵌入了服务 实现一些进阶功能:显示专辑封面、歌曲名称、歌手姓名和进度条 最终页面展示 实验步骤 布局文件 2.创建一个assets文件夹,放置音频 JAVA文件里的主要方法 // 自定义的BroadcastReceiver,负责监听从Service传回来的广播 public class ActivityReceiver extends BroadcastReceiver {

qq_44722971的博客 5455

安卓结课作业 音乐播放器 视频播放 游戏 附带源码

项目简介 一:整合了三个小功能 实现了音乐播放器(Service+Activity实现) 视频播放器(本地视频播放——进度条控制) 2048游戏(人生版2048——分数统计显示) 二:项目概述(创建Activity的方式均是以Android Studio 4.1.2 自动创建 ) 音乐播放器 1页面展示如下: 2设计分析: 项目包含五个类,五个布局文件 frag1、frag2为java文件 Music_Activity为Activity文件, MusicService为Service文件, MainAct

青云的博客 3092
上一篇: ContentProvider简介
下一篇: Android程序首次运行自动创建桌面快捷方式的方法
Jymot
博客等级 码龄14年 6粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值