メインコンテンツまでスキップ

TCP スキャン API

TCP スキャン API は、IPv4 アドレスの範囲を TCP 接続性でスキャンし、ネットワーク上で ADB 経由で到達可能な Android デバイスを自動的に接続します。手動の adb connect コマンドなしでワイヤレス Android デバイスを発見して接続するのに役立ちます。

エンドポイント

POST /api/v1/device/tcp-scan

要件

ライセンス要件

この API には Pro、Team、または Business プランが必要です。 Starter プランはアクセスできません。

リクエストボディ

すべてのフィールドはオプションです。省略した場合、アプリは設定で構成された IP 範囲とポートを使用します。

フィールド必須説明
start_ipstringいいえ開始 IPv4 アドレス(例: "192.168.1.2")。デフォルトはアプリの保存設定。
end_ipstringいいえ終了 IPv4 アドレス(例: "192.168.1.254")。デフォルトはアプリの保存設定。
portintegerいいえスキャンする TCP ポート(例: 5555)。デフォルトは保存された scan_port(デフォルト: 5555)。
サブネット制限

スキャンは単一の /24 サブネットに限定されます。start_ipend_ip が異なる /24 サブネットに属する場合、範囲は自動的に start_ip.x.x.255 に切り詰められます。

アプリ設定を使用(推奨)

アプリで構成された IP 範囲とポートを使用するには、空のボディを送信します:

curl -X POST http://localhost:50809/api/v1/device/tcp-scan \
-H "Content-Type: application/json" \
-d '{}'

カスタム IP 範囲

curl -X POST http://localhost:50809/api/v1/device/tcp-scan \
-H "Content-Type: application/json" \
-d '{
"start_ip": "192.168.1.2",
"end_ip": "192.168.1.254",
"port": 5555
}'

レスポンス

{
"code": 0,
"message": "success",
"data": {
"total": 3,
"success": 2,
"failed": 1,
"details": [
{
"ip": "192.168.1.100",
"success": true,
"message": "already connected to 192.168.1.100:5555"
},
{
"ip": "192.168.1.101",
"success": true,
"message": "connected to 192.168.1.101:5555"
},
{
"ip": "192.168.1.102",
"success": false,
"message": "failed to connect to 192.168.1.102:5555"
}
]
}
}

レスポンスフィールド

フィールド説明
data.totalintegerTCP ポートで応答した IP の総数
data.successintegerADB 経由で正常に接続された IP
data.failedintegerADB 接続に失敗した IP
data.detailsarrayIP ごとの結果リスト
data.details[].ipstringスキャンされた IP アドレス
data.details[].successbooleanADB 接続が成功した場合 true
data.details[].messagestringADB 出力またはエラーメッセージ

エラーレスポンス

HTTP ステータスコード説明
403403API アクセスには Pro+ プランが必要

動作の仕組み

  1. TCP プローブ — 範囲内の各 IP が 1 秒の TCP 接続タイムアウトでテストされます(並行して)。
  2. ADB 接続 — 応答する各 IP に対して、adb connect <ip>:<port> が試みられます(最大 2 回の再試行)。
  3. 結果の集約 — すべての IP ごとの結果が収集されて返されます。

スキャンが成功すると、接続されたデバイスが TikMatrix に自動的に表示されます。