feat: publish workphone SDK deployment and API docs
This commit is contained in:
42
sdk/agent/wait_and_start.sh
Executable file
42
sdk/agent/wait_and_start.sh
Executable file
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# 等待设备授权后自动启动 Agent
|
||||
# 用法: bash wait_and_start.sh [server_url]
|
||||
#
|
||||
SERVER_URL="${1:-ws://192.168.1.100:8899/ws/device}"
|
||||
DEVICE_SERIAL="dc9c23e00510"
|
||||
MAX_WAIT=300 # 最多等5分钟
|
||||
|
||||
echo "⏳ 等待设备 $DEVICE_SERIAL 授权..."
|
||||
echo ""
|
||||
echo "📱 请在 Redmi Note 11 上执行以下操作:"
|
||||
echo " 1. 设置 → 更多设置 → 开发者选项"
|
||||
echo " 2. 确认「USB调试」已开启"
|
||||
echo " 3. ⚠️ 关键:开启「USB调试(安全设置)」← 小米/红米特有!"
|
||||
echo " 4. 如果没有弹出授权弹窗,点击「撤销USB调试授权」后重新插拔USB线"
|
||||
echo " 5. 弹窗出现后,勾选「始终允许」→ 点「确定」"
|
||||
echo ""
|
||||
|
||||
SECONDS_WAITED=0
|
||||
while [ $SECONDS_WAITED -lt $MAX_WAIT ]; do
|
||||
STATE=$(adb -s "$DEVICE_SERIAL" get-state 2>/dev/null)
|
||||
if [ "$STATE" = "device" ]; then
|
||||
echo "✅ 设备已授权!"
|
||||
MODEL=$(adb -s "$DEVICE_SERIAL" shell getprop ro.product.model 2>/dev/null)
|
||||
ANDROID=$(adb -s "$DEVICE_SERIAL" shell getprop ro.build.version.release 2>/dev/null)
|
||||
MIUI=$(adb -s "$DEVICE_SERIAL" shell getprop ro.miui.ui.version.name 2>/dev/null)
|
||||
echo " 型号: $MODEL | Android: $ANDROID | MIUI: $MIUI"
|
||||
echo ""
|
||||
echo "🚀 正在启动 Agent..."
|
||||
cd "$(dirname "$0")"
|
||||
python3 agent.py -s "$SERVER_URL"
|
||||
exit 0
|
||||
fi
|
||||
sleep 3
|
||||
SECONDS_WAITED=$((SECONDS_WAITED + 3))
|
||||
printf "\r 已等待 %ds / %ds... (状态: %s)" "$SECONDS_WAITED" "$MAX_WAIT" "${STATE:-offline}"
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo "❌ 等待超时,请检查手机设置"
|
||||
exit 1
|
||||
Reference in New Issue
Block a user