修改注释及代码重构
This commit is contained in:
68
cmd/main.go
68
cmd/main.go
@@ -3,92 +3,94 @@ package main
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"go-mobile-uiautomator/adb"
|
||||
"go-mobile-uiautomator/services"
|
||||
"time"
|
||||
|
||||
"github.com/zhuy1228/go-mobile-uiautomator/adb"
|
||||
"github.com/zhuy1228/go-mobile-uiautomator/services"
|
||||
)
|
||||
|
||||
const serial = "emulator-5556"
|
||||
const addr = "127.0.0.1:5037"
|
||||
// 设备配置,根据实际环境修改
|
||||
const (
|
||||
serial = "emulator-5554" // 设备序列号
|
||||
addr = "127.0.0.1:5037" // ADB 服务器地址
|
||||
)
|
||||
|
||||
func main() {
|
||||
LaunchUiautomator()
|
||||
filePushInstall()
|
||||
}
|
||||
|
||||
func LaunchUiautomator() {
|
||||
FilePushInstall()
|
||||
// launchUiautomator 推送服务文件并启动 UIAutomator2
|
||||
func launchUiautomator() {
|
||||
filePushInstall()
|
||||
go adb.LaunchUiautomator(addr, serial)
|
||||
select {}
|
||||
select {} // 阻塞等待,持续输出日志
|
||||
}
|
||||
|
||||
// 文件推送加安装
|
||||
func FilePushInstall() {
|
||||
// filePushInstall 列出设备并推送 u2.jar 到设备
|
||||
func filePushInstall() {
|
||||
payload, _ := adb.ListDevicesRaw(addr, 15*time.Second)
|
||||
m := adb.ParseDevicesPayload(payload)
|
||||
b2, _ := json.MarshalIndent(m, "", " ")
|
||||
fmt.Println(string(b2))
|
||||
|
||||
services.InstallServiceJar(addr, serial)
|
||||
|
||||
// services.InstallServiceApk(addr, serial)
|
||||
}
|
||||
|
||||
// 文件推送验证
|
||||
func FilePush() {
|
||||
// edit these for your environment
|
||||
// filePush 文件推送验证示例
|
||||
func filePush() {
|
||||
// 根据实际环境修改以下参数
|
||||
local := "C:/Users/01/Desktop/aaa.PNG"
|
||||
remote := "/sdcard/ccc.PNG"
|
||||
mode := 0644
|
||||
targetProduct := "23113RKC6C"
|
||||
|
||||
serial, err := adb.FindSerialByProduct(addr, targetProduct)
|
||||
devSerial, err := adb.FindSerialByProduct(addr, targetProduct)
|
||||
if err != nil {
|
||||
fmt.Println("find device error:", err)
|
||||
fmt.Println("查找设备失败:", err)
|
||||
return
|
||||
}
|
||||
fmt.Println("found serial:", serial)
|
||||
fmt.Println("找到设备:", devSerial)
|
||||
|
||||
// Now open a new connection and transport to the found device for further ops
|
||||
conn, err := adb.DialADB(addr, 15*time.Second)
|
||||
if err != nil {
|
||||
fmt.Println("dial error:", err)
|
||||
fmt.Println("连接失败:", err)
|
||||
return
|
||||
}
|
||||
defer conn.Close()
|
||||
adb.TransportTo(conn, serial)
|
||||
adb.TransportTo(conn, devSerial)
|
||||
|
||||
sync := adb.InitSync(conn)
|
||||
n, err := sync.SyncPushFile(local, remote, mode, true)
|
||||
if err != nil {
|
||||
fmt.Println("Push 失败:", err)
|
||||
fmt.Println("推送失败:", err)
|
||||
} else {
|
||||
fmt.Printf("Push 成功, 共写入 %d 字节\n", n)
|
||||
fmt.Printf("推送成功, 共写入 %d 字节\n", n)
|
||||
}
|
||||
}
|
||||
|
||||
// 连接验证
|
||||
func Connect() {
|
||||
// connect 连接验证示例
|
||||
func connect() {
|
||||
targetProduct := "23113RKC6C"
|
||||
|
||||
serial, err := adb.FindSerialByProduct(addr, targetProduct)
|
||||
devSerial, err := adb.FindSerialByProduct(addr, targetProduct)
|
||||
if err != nil {
|
||||
fmt.Println("find device error:", err)
|
||||
fmt.Println("查找设备失败:", err)
|
||||
return
|
||||
}
|
||||
fmt.Println("found serial:", serial)
|
||||
fmt.Println("找到设备:", devSerial)
|
||||
|
||||
// Now open a new connection and transport to the found device for further ops
|
||||
conn, err := adb.DialADB(addr, 15*time.Second)
|
||||
if err != nil {
|
||||
fmt.Println("dial error:", err)
|
||||
fmt.Println("连接失败:", err)
|
||||
return
|
||||
}
|
||||
defer conn.Close()
|
||||
adb.TransportTo(conn, serial)
|
||||
adb.TransportTo(conn, devSerial)
|
||||
|
||||
out, err := adb.ExecShell(conn, "getprop")
|
||||
if err != nil {
|
||||
fmt.Println("shell error:", err)
|
||||
fmt.Println("Shell 执行失败:", err)
|
||||
} else {
|
||||
fmt.Printf("shell out: %q\n", string(out))
|
||||
fmt.Printf("Shell 输出: %q\n", string(out))
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user