Skip to content

Latest commit

 

History

History
194 lines (153 loc) · 5.22 KB

File metadata and controls

194 lines (153 loc) · 5.22 KB

日志显示功能使用指南

🎯 功能概述

我已经成功实现了在黑色叠层下显示日志信息的功能,并重新检查了STS配置。

✅ 已实现的功能

1. 日志显示界面

  • ✅ 在相机UI中添加了日志显示区域
  • ✅ 日志区域在关闭黑色叠层时显示,开启时隐藏
  • ✅ 支持滚动查看历史日志
  • ✅ 使用等宽字体显示,便于阅读

2. 日志管理器

  • ✅ 创建了LogDisplayManager单例管理器
  • ✅ 支持多种日志级别:DEBUG、INFO、WARN、ERROR、SUCCESS
  • ✅ 自动添加时间戳
  • ✅ 限制最大日志行数(100行)
  • ✅ 自动滚动到最新日志

3. OSS服务日志集成

  • ✅ STS服务请求和响应日志
  • ✅ OSS客户端初始化日志
  • ✅ 图片上传进度和结果日志
  • ✅ 错误和异常日志

4. STS配置检查

  • ✅ 修复了STS_BASE_URL配置
  • ✅ 确认了角色名为oss_normal_op
  • ✅ 保持了多路径尝试机制

🎮 使用方法

查看日志

  1. 打开应用
  2. 点击右下角灰色按钮 - 关闭黑色叠层
  3. 查看日志区域 - 在音量显示下方会出现日志显示区域
  4. 滚动查看 - 可以滚动查看历史日志

运行诊断

  1. 长按右下角灰色按钮 - 启动OSS服务诊断
  2. 查看实时日志 - 诊断过程会实时显示在日志区域
  3. 等待完成 - 诊断完成后会显示Toast提示

测试上传

  1. 拍摄照片 - 点击黑色叠层拍照
  2. 查看上传日志 - 关闭黑色叠层查看上传过程日志
  3. 观察结果 - 查看上传成功或失败的详细信息

📋 日志级别说明

DEBUG (蓝色)

  • STS URL尝试
  • API响应状态
  • 详细的调试信息

INFO (白色)

  • 一般信息
  • 操作状态
  • 配置信息

WARN (黄色)

  • 警告信息
  • 使用模拟凭证
  • 路径失败但继续尝试

ERROR (红色)

  • 错误信息
  • 异常情况
  • 失败操作

SUCCESS (绿色)

  • 成功操作
  • 完成状态
  • 正面结果

🔍 STS配置状态

当前配置

object OSSConfig {
    const val STS_BASE_URL = "https://dev-inkcre-sts.zeabur.app/"
    const val STS_ROLE = "oss_normal_op"
    const val ENDPOINT = "https://oss-cn-hangzhou.aliyuncs.com"
    const val BUCKET_NAME = "dev-inkcre"
}

测试结果

# 测试API路径
curl "https://dev-inkcre-sts.zeabur.app/thrid_party/aliyun/sts/oss_normal_op?duration=3600"
# 结果: 404 Not Found

结论: STS服务仍然不可用,但应用会自动回退到模拟凭证模式。

🧪 测试场景

场景1: 正常使用

  1. 打开应用
  2. 关闭黑色叠层查看日志
  3. 拍摄照片观察上传过程
  4. 长按按钮运行诊断

场景2: 错误排查

  1. 查看ERROR级别日志
  2. 运行诊断工具
  3. 分析失败原因
  4. 检查网络连接

场景3: 开发调试

  1. 查看DEBUG级别日志
  2. 观察API请求过程
  3. 监控上传进度
  4. 验证配置正确性

📱 UI布局说明

┌─────────────────────────────┐
│ 音量: 15                    │  <- 音量显示(始终可见)
├─────────────────────────────┤
│ [12:34:56.789] INFO: 日志   │  <- 日志显示区域
│ [12:34:57.123] DEBUG: 调试  │     (黑色叠层关闭时显示)
│ [12:34:57.456] SUCCESS: 成功│
│ [12:34:57.789] ERROR: 错误  │
│ ...                         │
│ ↕ 可滚动查看                │
├─────────────────────────────┤
│                             │
│      摄像头画面             │  <- 摄像头预览
│                             │
│                        [👁] │  <- 切换按钮
└─────────────────────────────┘

🔧 开发者选项

启用/禁用模拟STS

在STSService.kt中修改:

companion object {
    private const val USE_MOCK_STS = true  // true=使用模拟凭证,false=使用真实API
}

调整日志行数

在LogDisplayManager.kt中修改:

private val maxLogLines = 100  // 调整最大日志行数

自定义日志格式

在LogDisplayManager.kt中修改:

private val dateFormat = SimpleDateFormat("HH:mm:ss.SSS", Locale.getDefault())

🚀 下一步计划

STS服务修复后

  1. 关闭模拟模式 - 设置USE_MOCK_STS = false
  2. 测试真实API - 验证STS服务正常工作
  3. 完整功能测试 - 测试端到端上传流程

功能增强

  1. 日志过滤 - 按级别过滤显示
  2. 日志导出 - 保存日志到文件
  3. 实时监控 - 显示网络状态和性能指标

📞 问题排查

日志不显示

  1. 确认黑色叠层已关闭
  2. 检查日志区域是否可见
  3. 尝试重新初始化应用

诊断失败

  1. 检查网络连接
  2. 查看ERROR级别日志
  3. 确认权限配置正确

上传失败

  1. 查看上传相关日志
  2. 确认STS凭证状态
  3. 检查OSS配置

当前状态: 日志显示功能已完成,STS配置已优化,等待服务端修复后进行完整测试。

使用建议: 立即测试日志显示功能,通过实时日志监控OSS服务状态。