敏捷冲刺日志 - Day 2

敏捷冲刺日志 - Day 2

站立会议

站立时会议改为线上进行。

  • 昨天已完成的工作:

    • 熟悉了项目初始版本(v1.0)的代码结构和功能。
    • 分析了用户提出的三个核心需求:修复权限异常、界面汉化、增加批量处理。
  • 今天计划完成的工作:

    • 首要任务:解决在较新安卓系统上的权限申请异常问题。
    • 开始进行界面的汉化工作,将 activity_main.xml 中的硬编码字符串替换为资源引用。
  • 工作中遇到的困难:

    • 安卓的权限系统,特别是从 Android 10 (Q) 以来的分区存储(Scoped Storage)机制,与传统的 READ/WRITE_EXTERNAL_STORAGE 权限有很大不同。
    • 需要花时间研究 READ_MEDIA_VIDEO 新权限的适用范围和动态申请方式,以确保对新旧版本的兼容性。
    • 如何在不破坏现有逻辑的情况下,优雅地插入权限检查和请求代码,是一个挑战。

项目燃尽图

1f64f6be9c4829f00fccee12d7f0fe3e

代码/文档签入记录

  • 代码签入: feat(permission): Add dynamic permission requests for modern Android versions
  • 签入记录对应的Issue内容与链接:
    • Issue: #TASK-001 - 适配 Android 11+ 存储权限
    • 链接: [链接到内部工单系统]
  • Code Review: 编码规范文档无变化。代码已提交 Code Review。

最新模块的代码

这是本次修改的核心代码之一,用于根据安卓系统版本动态请求所需的权限。

    /**
     * 根据安卓系统版本请求存储权限。
     * - Android 13 (TIRAMISU) 及以上版本请求 READ_MEDIA_VIDEO。
     * - 其余版本请求 READ_EXTERNAL_STORAGE。
     */
    private fun requestStoragePermission() {
        // 判断安卓版本,选择合适的权限
        val permission = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
            Manifest.permission.READ_MEDIA_VIDEO
        } else {
            Manifest.permission.READ_EXTERNAL_STORAGE
        }
        checkPermission(permission, STORAGE_PERMISSION_CODE)
    }

    /**
     * 检查并请求指定权限。
     * @param permission 权限名称
     * @param requestCode 请求码
     */
    private fun checkPermission(permission: String, requestCode: Int) {
        // 检查权限是否已被授予
        if (ContextCompat.checkSelfPermission(this, permission) == PackageManager.PERMISSION_DENIED) {
            // 若未授予,则发起权限请求
            ActivityCompat.requestPermissions(this, arrayOf(permission), requestCode)
        }
    }

每日每人总结

  • 刘瑞康 (开发): 今天研究了 Android 新权限模型的文档,负责编写了 checkPermissionrequestStoragePermission 的具体实现代码,并提交了 Code Review,希望能尽快合入主干。
  • 刘泽昊 (开发): 开始了 UI 汉化工作,把 activity_main.xml 中的所有硬编码字符串抽离到了 strings.xml,为后续多语言支持打下基础。这是一个重要的国际化准备步骤。
  • 伊尔番 (PM): 今天的站会明确了本轮冲刺的优先级。已与用户确认放弃 iOS 适配,聚焦安卓平台。同时开始梳理“批量处理”功能的具体需求点,准备放入需求池。
posted @ 2025-12-03 22:15  二熊苏尔  阅读(4)  评论(0)    收藏  举报