5.3 KiB
5.3 KiB
Android手机调试完整指南
调试环境准备
1. ADB连接设置
# 检查ADB连接
adb devices
# 如果设备未显示,尝试以下命令:
adb kill-server
adb start-server
adb devices
2. 启用USB调试
- 设置 → 关于手机 → 版本号 (连续点击7次启用开发者选项)
- 设置 → 开发者选项 → USB调试 (开启)
- 设置 → 开发者选项 → USB安装 (开启)
小米推送离线消息调试步骤
步骤1: 清除应用数据并重新安装
# 清除应用数据
adb shell pm clear com.xunpaisoft.social
# 安装修复后的APK
adb install -r app-release.apk
步骤2: 启动应用并监控推送注册
# 清除日志
adb logcat -c
# 启动应用并登录,然后监控推送注册日志
adb logcat | grep "开始初始化\|小米推送注册成功\|设备Token设置成功\|setDeviceToken"
关键日志:
开始初始化小米推送服务- 推送服务初始化小米推送注册成功,RegID: xxxxx- 推送注册成功设备Token设置成功: xxxxx- 设备Token设置成功
步骤3: 测试离线消息
# 完全关闭应用
adb shell am force-stop com.xunpaisoft.social
# 监控推送消息日志
adb logcat | grep "MiPush\|onNotificationMessageArrived\|onReceivePassThroughMessage\|showMainActivity\|forceConnect"
关键日志:
onNotificationMessageArrived: xxxxx- 通知消息到达onReceivePassThroughMessage: xxxxx- 透传消息到达showMainActivity: started via action- 应用启动成功forceConnect called successfully- 消息拉取成功
步骤4: 检查系统权限
# 检查应用权限
adb shell dumpsys package com.xunpaisoft.social | grep "permission"
# 检查推送服务状态
adb shell dumpsys package | grep "com.xiaomi.mipush"
调试脚本
1. 推送注册调试脚本
#!/bin/bash
echo "=== 小米推送注册调试 ==="
echo "1. 清除应用数据..."
adb shell pm clear com.xunpaisoft.social
echo "2. 清除日志..."
adb logcat -c
echo "3. 请启动应用并登录,然后按任意键继续..."
read -p "按任意键继续..."
echo "4. 监控推送注册日志..."
adb logcat | grep "开始初始化\|小米推送注册成功\|设备Token设置成功\|setDeviceToken"
2. 离线消息调试脚本
#!/bin/bash
echo "=== 小米推送离线消息调试 ==="
echo "1. 清除日志..."
adb logcat -c
echo "2. 请启动应用并登录,然后按任意键继续..."
read -p "按任意键继续..."
echo "3. 完全关闭应用..."
adb shell am force-stop com.xunpaisoft.social
echo "4. 监控推送消息日志..."
adb logcat | grep "MiPush\|onNotificationMessageArrived\|onReceivePassThroughMessage\|showMainActivity\|forceConnect"
3. 完整调试脚本
#!/bin/bash
echo "=== 小米推送完整调试 ==="
echo "1. 检查ADB连接..."
adb devices
echo "2. 清除应用数据..."
adb shell pm clear com.xunpaisoft.social
echo "3. 清除日志..."
adb logcat -c
echo "4. 请启动应用并登录,然后按任意键继续..."
read -p "按任意键继续..."
echo "5. 监控推送注册日志..."
adb logcat | grep "开始初始化\|小米推送注册成功\|设备Token设置成功\|setDeviceToken"
常见问题排查
问题1: ADB连接失败
解决方案:
- 检查USB线是否支持数据传输
- 检查USB调试是否已开启
- 尝试不同的USB端口
- 重启ADB服务
问题2: 推送注册失败
解决方案:
- 检查网络连接
- 检查APPID/APPKEY配置
- 检查应用签名
- 检查小米推送服务状态
问题3: 推送消息收不到
解决方案:
- 检查系统权限设置
- 检查电池优化设置
- 检查自启动权限
- 检查通知权限
问题4: 应用启动失败
解决方案:
- 检查应用启动权限
- 检查系统限制
- 检查应用完整性
- 检查系统版本兼容性
调试技巧
1. 使用详细日志
adb logcat -v time | grep "MiPush\|PushService\|showMainActivity\|forceConnect"
2. 监控特定进程
adb shell ps | grep "com.xunpaisoft.social"
3. 检查系统状态
adb shell dumpsys package com.xunpaisoft.social
4. 检查推送服务状态
adb shell dumpsys package | grep "com.xiaomi.mipush"
预期结果
推送注册成功日志
开始初始化小米推送服务
小米推送配置 - APPID: 2882303761520346070, APPKEY: 5522034658070
开始注册小米推送服务
小米推送服务注册请求已发送
小米推送注册成功,RegID: xxxxx
设备Token设置成功: xxxxx
推送消息接收日志
onNotificationMessageArrived: xxxxx
showMainActivity: started via action
forceConnect called successfully
应用启动日志
showMainActivity: started via action
forceConnect called successfully
注意事项
- 确保ADB连接稳定: 避免调试过程中断开连接
- 确保应用完整: 使用修复后的APK进行测试
- 确保系统权限: 授予所有必要的系统权限
- 确保网络连接: 保持设备网络连接稳定
- 确保推送服务: 确保小米推送服务正常运行
联系支持
如果问题仍然存在,请提供以下信息:
- 完整的日志输出
- 设备型号和系统版本
- 应用版本信息
- 测试步骤和结果