博客
关于我
安卓实训项目阶段1报告-续2
阅读量:522 次
发布时间:2019-03-07

本文共 1200 字,大约阅读时间需要 4 分钟。

基于存储卡音乐播放器 V0.3 开发项目实训

项目背景

基于存储卡音乐播放器 V0.3 结合之前的 V0.2 版本,新增了一些核心功能以提升用户体验。项目主要实现了音乐列表管理、播放控制以及自动切换等功能,结合安卓开发框架完成相应实现。

功能增强

  • 音乐播放列表

    • 独立存储音乐列表data文件,支持批量导入音乐数据。
    • 新增音乐列表页面,可视ually显示歌曲名称并支持搜索功能。
    • 在列表级别增加播放控制按钮,包括播放、暂停、下一首、上一首和退出全屏等功能。
  • 播放控制

    • 初始化时从列表中选中默认播放第一首歌。
    • 支持单击某一首音乐直接播放,播放进度清零。
    • 在音乐播放时,自动显示当前播放时长,并支持屏幕全屏播放。
    • 鼓励用户切换播放器背景选择从存储卡中选取,全新绘制新界面。
  • 安卓开发流程

    一、创建安卓项目

  • 新建一个新的安卓项目,在 Android Studio 中选择同一构建工具和最小版本为 SDK version 23 的非 Google Play 虚拟机。
  • 项目路径名称建议为 BasedOnSDCardMusicPlayer_V0.3
  • 设置语言为 Java,选择空白模板,勾选 Create a new main module 生成基本项目架构。
  • 二、布局设计

  • activity.xml
  • 三、组件开发

  • 音乐列表适配器 MusicAdapter.java

    • 使用 LinearLayout 布局,展示音乐列表项,包含歌曲名称。
    • 使用 ImageButton 实现上一首和下一首功能。
    • 适配音乐列表数据源,支持动态视图更新。
  • 音乐播放控制适配器 MusicPlayerAdapter.java

    • 实现播放控制功能,包括播放、暂停、下一首、上一首以及退出全屏。
    • 在播放过程中显示当前音乐播放时间。
  • 四、工具类开发

  • 常用工具类 CommonUtils.java

    • 提供音乐列表操作、播放器控制等通用功能。
    • 使用 SharedPreferences 存储用户偏好设置,包括默认播放位置。
  • 音乐实体类 Music.java

    • 包含音乐文件路径、歌曲名称、播放时间等属性信息。
  • 五、主界面实现

    MainActivity.java 中:

  • 导入必要的 intentintent-filter,支持从文件浏览器访问存储卡文件。
  • 实现 BroadcastReceiver 用于动态更新音乐播放状态。
  • 使用 Service 组件实现音乐播放功能,避免 UI 阻塞。
  • 六、功能测试

  • 通过虚拟设备进行功能演示,确保音乐播放、列表切换和自动切换都能正常运行。
  • 测试不同存储卡文件的兼容性,验证音乐导入和播放的完整性。
  • 逐步调试适配器和工具类功能,确保所有组件协同工作。
  • 总体来看,V0.3 版本的更新在功能上有了显著提升,同时在技术实现上更加稳健,为后续的版本迭代奠定了良好基础。

    转载地址:http://uwbnz.baihongyu.com/

    你可能感兴趣的文章
    Python Selenium模块详解
    查看>>
    Python selenium爬取影评生成词云图
    查看>>
    python selenium自动化测试报告
    查看>>
    Python selenium自动化测试框架实战 —— 登录测试案例
    查看>>
    Python Selenium设计模式 —— POM
    查看>>
    Python Serial:如何使用 read 或 readline 函数一次读取多个字符
    查看>>
    Python set([]) 如何检查两个对象是否相等?一个对象需要定义哪些方法来自定义它?
    查看>>
    Python setup.py:数据文件无法复制目录:不存在或不是常规文件
    查看>>
    Python setuptools sdist:仅安装版本化文件
    查看>>
    Python Shell下使用matplotlib
    查看>>
    Python Slice How-to,我知道Python Slice,但我怎么才能使用内置的Slice对象呢?
    查看>>
    python socket分包发送数据
    查看>>
    python socket模块_Python socket模块实现TCP服务端客户端
    查看>>
    Python SOCKS5代理客户端HTTPS
    查看>>
    Python Soc网络分析:通过使用函数迭代列表来计算机会网络
    查看>>
    python转换已转义的字符串
    查看>>
    Python Sphinx自动摘要:成员函数的自动列表
    查看>>
    Python SQL和NoSQL数据库操作实战
    查看>>
    python stdout flush_sys.stdout.flush()方法的用法
    查看>>
    python string 运算
    查看>>