tasks.md 3.9 KB

桌面播放器卡片实现计划

  • [x] 1. 创建卡片基础架构

    • 创建FormExtensionAbility类,处理卡片生命周期管理
    • 配置module.json5添加卡片能力声明
    • 创建卡片资源配置文件和布局模板
    • 需求: 1.1, 6.1
  • [ ] 2. 实现卡片数据管理

  • [x] 2.1 创建卡片数据模型和管理器

    • 定义WidgetData接口和相关数据结构
    • 实现WidgetDataManager类处理数据持久化
    • 创建卡片状态缓存机制
    • 需求: 2.1, 2.2, 4.1
  • [ ] 2.2 实现播放状态同步机制

    • 创建与LocalMusic组件的通信接口
    • 监听AvSessionController状态变化
    • 实现播放信息的实时同步更新
    • 需求: 4.1, 4.2, 4.3
  • [ ] 3. 开发播放控制功能

  • [ ] 3.1 实现基本播放控制命令

    • 创建播放/暂停控制逻辑
    • 实现上一首/下一首切换功能
    • 添加播放状态验证和错误处理
    • 需求: 1.1, 1.2, 1.3
  • [ ] 3.2 实现进度控制功能

    • 添加播放进度显示和更新逻辑
    • 实现进度条点击跳转功能
    • 创建时间格式化和显示组件
    • 需求: 3.1, 3.2, 3.4
  • [ ] 4. 创建卡片UI布局

  • [ ] 4.1 实现小尺寸卡片布局(2x1)

    • 设计基本播放控制按钮布局
    • 添加歌曲名称显示组件
    • 实现按钮状态管理和样式
    • 需求: 5.1, 1.4, 1.5
  • [ ] 4.2 实现中等尺寸卡片布局(4x2)

    • 创建完整信息显示区域
    • 添加播放进度条组件
    • 实现艺术家和专辑信息显示
    • 需求: 5.2, 2.1, 2.2, 3.1
  • [ ] 4.3 实现大尺寸卡片布局(4x3)

    • 添加专辑封面显示功能
    • 创建扩展控制按钮区域
    • 实现完整播放信息展示
    • 需求: 5.3, 2.3, 2.4
  • [ ] 5. 集成应用通信机制

  • [ ] 5.1 实现CommonEvent通信

    • 创建卡片控制命令发送机制
    • 监听LocalMusic组件的状态广播
    • 实现双向通信和错误重试
    • 需求: 4.1, 4.2, 6.1
  • [ ] 5.2 集成AvSessionController监听

    • 注册媒体会话状态变化监听
    • 同步播放状态和歌曲信息
    • 处理投播和外部控制事件
    • 需求: 4.3, 4.4, 4.5
  • [ ] 6. 实现卡片配置和适配

  • [ ] 6.1 创建多尺寸适配逻辑

    • 实现FormLayoutManager布局管理器
    • 添加尺寸变化时的UI重构
    • 创建响应式布局组件
    • 需求: 5.4, 5.5
  • [ ] 6.2 实现卡片配置管理

    • 添加卡片个性化设置选项
    • 实现主题色彩同步功能
    • 创建用户偏好设置存储
    • 需求: 5.4, 6.3
  • [ ] 7. 添加快速启动功能

  • [ ] 7.1 实现应用启动逻辑

    • 创建点击卡片打开主应用功能
    • 实现深度链接到播放页面
    • 添加应用状态检测和恢复
    • 需求: 6.1, 6.2, 6.4
  • [ ] 7.2 实现长按配置功能

    • 添加卡片长按菜单
    • 创建卡片设置和删除选项
    • 实现卡片配置界面跳转
    • 需求: 6.3, 6.5
  • [ ] 8. 完善错误处理和优化

  • [ ] 8.1 实现错误处理机制

    • 添加通信失败的降级处理
    • 创建离线状态显示和恢复
    • 实现错误日志记录和上报
    • 需求: 1.4, 4.4
  • [ ] 8.2 性能优化和内存管理

    • 优化卡片更新频率和策略
    • 实现图片缓存和内存管理
    • 添加电量优化和后台限制
    • 需求: 4.5, 5.5
  • [ ] 9. 编写单元测试

  • [ ] 9.1 测试卡片核心功能

    • 编写FormExtensionAbility生命周期测试
    • 测试播放控制命令的正确性
    • 验证数据同步和状态管理
    • 需求: 1.1, 1.2, 1.3, 4.1
  • [ ] 9.2 测试UI布局和交互

    • 测试多尺寸布局的适配性
    • 验证用户交互的响应性
    • 测试异常情况的处理
    • 需求: 5.1, 5.2, 5.3, 6.1
  • [ ] 10. 集成测试和调试

  • [ ] 10.1 端到端功能测试

    • 测试卡片与主应用的完整交互流程
    • 验证多卡片实例的同步性
    • 测试系统级媒体控制集成
    • 需求: 4.1, 4.2, 4.3, 6.1
  • [ ] 10.2 用户体验优化

    • 优化卡片响应速度和流畅性
    • 完善视觉效果和动画
    • 进行可用性测试和改进
    • 需求: 6.4, 6.5