雷电模拟器命令行管理接口 (Command Line Management Interface)

使用说明

以下是 ldconsolednconsole 的命令行接口使用说明,适用于管理和操作雷电模拟器实例。每个命令后跟随的参数用于指定具体的操作目标或设置。

quit

退出指定的模拟器实例。

  • 参数:
    • --name mnq_name: 指定模拟器名称。
    • --index mnq_idx: 指定模拟器索引编号。
# 示例:退出名为 "mySimulator" 的模拟器
ldconsole quit --name mySimulator

# 示例:退出索引为 0 的模拟器
ldconsole quit --index 0

quitall

退出所有正在运行的模拟器实例。

# 示例:退出所有模拟器
ldconsole quitall

launch

启动指定的模拟器实例。

  • 参数同 quit
# 示例:启动名为 "mySimulator" 的模拟器
ldconsole launch --name mySimulator

reboot

重启指定的模拟器实例。

  • 参数同 quit
# 示例:重启名为 "mySimulator" 的模拟器
ldconsole reboot --name mySimulator

list

列出所有已创建的模拟器实例名称列表。

# 示例:列出所有模拟器
ldconsole list

list2

列出所有已创建的模拟器实例(可能包含更多详细信息)。

  • 字段1: 模拟器索引
  • 字段2: 模拟器名称
  • 字段3: 底层窗口句柄
  • 字段4: 内部窗口句柄
  • 字段5: 模拟器状态
    • 0 - 未运行
    • 1 - 运行
  • 字段6: dnplayer.exeUID
    • 未开启显示为 -1
    • 开启显示实际进程号
  • 字段7: Ld9BoxHeadless.exe UID
    • 未开启显示为 -1
    • 开启显示实际进程号
  • 字段8: 模拟器宽
  • 字段9: 模拟器高
  • 字段10: 模拟器DPI
# 示例:列出所有模拟器(详细)
ldconsole list2

list3

列出指定索引编号的模拟器实例信息。

  • 参数:
    • --index <mnq_idx>: 指定模拟器索引编号。
# 示例:列出索引为 1 的模拟器详情
ldconsole list3 --index 1

runninglist

列出当前正在运行的模拟器实例。

  • 字段: 模拟器名称
# 示例:列出所有正在运行的模拟器
ldconsole runninglist

isrunning

检查指定的模拟器是否正在运行。

  • 参数同 quit
  • 字段
    • running: 运行
    • stop: 未运行
# 示例:检查名为 "mySimulator" 的模拟器是否正在运行
ldconsole isrunning --name mySimulator

add

创建一个新的模拟器实例。

  • 参数:
    • --name <mnq_name>: 指定新模拟器的名称。
# 示例:创建一个名为 "newSimulator" 的模拟器
ldconsole add --name newSimulator

copy

复制现有的模拟器实例。

  • 参数:
    • --name <mnq_name>: 新模拟器的名称。
    • --from <mnq_name | mnq_idx>: 要复制的源模拟器名称或索引编号。
# 示例:从索引为 1 的模拟器复制并命名为 "copiedSimulator"
ldconsole copy --name copiedSimulator --from 1

remove

移除指定的模拟器实例。

  • 参数同 quit
# 示例:移除名为 "oldSimulator" 的模拟器
ldconsole remove --name oldSimulator

rename

重命名指定的模拟器实例。

  • 参数:
    • --name <mnq_name | --index mnq_idx>: 当前模拟器名称或索引编号。
    • --title <mnq_title>: 新的标题名称。
# 示例:将索引为 1 的模拟器重命名为 "renamedSimulator"
ldconsole rename --index 1 --title renamedSimulator

modify

修改指定模拟器的配置。

  • 参数包括但不限于分辨率、CPU核心数、内存大小等。详见以下详细说明。
# 示例:修改索引为 1 的模拟器配置
ldconsole modify --index 1 --resolution 1280,720,160 --cpu 4 --memory 2048
[--resolution <w,h,dpi>]
[--cpu <1 | 2 | 3 | 4>]
[--memory <256 | 512 | 768 | 1024 | 1536 | 2048 | 4096 | 8192>]
[--manufacturer asus]
[--model ASUS_Z00DUO]
[--pnumber 13800000000]
[--imei <auto | 865166023949731>]
[--imsi <auto | 460000000000000>]
[--simserial <auto | 89860000000000000000>]
[--androidid <auto | 0123456789abcdef>]
[--mac <auto | 000000000000>]
[--autorotate <1 | 0>
[--lockwindow <1 | 0>
[--root <1 | 0>

installapp

安装APK文件到指定的模拟器。

  • 参数:
    • --filename <apk_file_name>: APK文件路径。
    • --packagename <apk_package_name>: APK包名。
# 示例:安装名为 "example.apk" 的应用到索引为 1 的模拟器
ldconsole installapp --index 1 --filename example.apk

uninstallapp

卸载指定的应用程序。

  • 参数:
    • --packagename <apk_package_name>: 应用程序包名。
# 示例:卸载名为 "com.example.app" 的应用
ldconsole uninstallapp --index 1 --packagename com.example.app

runapp

启动指定的应用程序。

  • 参数同 uninstallapp
# 示例:启动名为 "com.example.app" 的应用
ldconsole runapp --index 1 --packagename com.example.app

killapp

停止指定的应用程序。

  • 参数同 uninstallapp
# 示例:停止名为 "com.example.app" 的应用
ldconsole killapp --index 1 --packagename com.example.app

locate

设置模拟器的地理位置。

  • 参数:
    • --LLI <Lng,Lat>: 经度和纬度坐标。
# 示例:设置索引为 1 的模拟器位置为北京(经度:116.4074, 纬度:39.9042)
ldconsole locate --index 1 --LLI 116.4074,39.9042

adb

通过 ADB 命令与模拟器交互。

  • 参数:
    • --command <cmd_str>: ADB 命令字符串。
# 示例:执行 "shell uptime" 命令获取模拟器运行时间
ldconsole adb --index 1 --command "shell uptime"

setprop

设置系统属性。

  • 参数:
    • --key <name>: 属性名称。
    • --value <val>: 属性值。
# 示例:设置 "debug.prop" 的值为 "true"
ldconsole setprop --index 1 --key debug.prop --value true

getprop

获取系统属性。

  • 参数:
    • --key <name>: 可选,指定要获取的属性名称。如果不指定,则返回所有属性。
# 示例:获取 "debug.prop" 的值
ldconsole getprop --index 1 --key debug.prop

downcpu

降低指定模拟器的 CPU 使用率。

  • 参数:
    • --rate <0~100>: 设置 CPU 占用比例。
# 示例:将索引为 1 的模拟器 CPU 使用率设为 50%
ldconsole downcpu --index 1 --rate 50

backup

备份模拟器数据。

  • 参数:
    • --file <filepath>: 备份文件路径。
# 示例:备份索引为 1 的模拟器数据到 "backup.zip"
ldconsole backup --index 1 --file backup.zip

restore

恢复模拟器数据。

  • 参数同 backup
# 示例:从 "backup.zip" 文件恢复索引为 1 的模拟器数据
ldconsole restore --index 1 --file backup.zip

action

执行自定义动作。

  • 参数:
    • --name mnq_name: 指定模拟器名称。
    • --index mnq_idx: 指定模拟器索引编号(name 、index 二者选其一)。
    • --key <name>: 动作键名。
    • --value <val>: 动作值。
# 示例:执行名为 "click" 的动作,值为 "100,200"(屏幕坐标)
ldconsole action --index 1 --key click --value 100,200

常见动作键

  1. call.input

    • 描述: 模拟输入事件,如按键或文本输入。

    • 示例:

      ldconsole action --index 1 --key call.input --value "Hello World"
      
  2. call.shake

    • 描述: 模拟设备摇晃。

    • 示例:

      ldconsole action --index 1 --key call.shake --value ""
      
  3. call.locate

    • 描述: 设置模拟器的地理位置。

    • 示例:

      • --value “116.4074,39.9042” (经纬度坐标)
      ldconsole action --index 1 --key call.locate --value "116.4074,39.9042"
      
  4. call.click

    • 描述: 模拟屏幕点击事件。

    • 示例:

      • --value “100,200” (屏幕坐标)
      ldconsole action --index 1 --key call.click --value "100,200"
      
  5. call.swipe

    • 描述: 模拟滑动操作。

    • 示例:

      • --value “100,200,300,400,500” (起始x,起始y,结束x,结束y,持续时间ms)
      ldconsole action --index 1 --key call.swipe --value "100,200,300,400,500"
      
  6. call.press

    • 描述: 模拟长按操作。

    • 示例:

      • --value “100,200,2000” (坐标x,坐标y,持续时间ms)
      ldconsole action --index 1 --key call.press --value "100,200,2000"
      
  7. call.keyevent

    • 描述: 模拟按键事件。

    • 示例:

      • --value “KEYCODE_HOME” (Android 键码)
      ldconsole action --index 1 --key call.keyevent --value "KEYCODE_HOME"
      
  8. call.screenshot

    • 描述: 获取模拟器屏幕截图。

    • 示例:

      ldconsole action --index 1 --key call.screenshot --value "/path/to/save/screenshot.png"
      
  9. call.volume

    • 描述: 调整音量。

    • 示例:

      # 增加音量
      ldconsole action --index 1 --key call.volume --value "up"
      
      # 减小音量
      ldconsole action --index 1 --key call.volume --value "down"
      
  10. call.power

    • 描述: 模拟电源按钮按下。

    • 示例:

      ldconsole action --index 1 --key call.power --value ""
      
  11. call.network

    • 描述: 修改网络状态。

    • 示例:

      • --value “wifi” (模拟 Wi-Fi 网络连接)
      • --value “mobile” (模拟移动数据(蜂窝数据)网络连接)
      • --value “none” (断开所有网络连接)
      ldconsole action --index 1 --key call.network --value "wifi"
      
  12. call.battery

    • 描述: 修改电池电量。

    • 示例:

      ldconsole action --index 1 --key call.battery --value "50"
      
  13. call.time

    • 描述: 设置系统时间。

    • 示例:

      ldconsole action --index 1 --key call.time --value "2023-01-01 12:00:00"
      
  14. call.telephony

    • 描述: 模拟电话状态。

    • 示例:

      • --value “incoming” (模拟来电 - 接听电话)
      • --value “outgoing” (模拟拨打电话 - 打出电话)
      • --value “idle” (模拟空闲状态 - 无电话活动)
      ldconsole action --index 1 --key call.telephony --value "incoming"
      
  15. call.sensor

    • 描述: 修改传感器数据。

    • 示例1: 加速度计 (Acceleration)

      • 含义: 模拟设备的线性加速度。

      • 格式: "acceleration:x=<float>,y=<float>,z=<float>"

        ldconsole action --index 1 --key call.sensor --value "acceleration:x=1.0,y=2.0,z=3.0"
        
    • 示例2: 陀螺仪 (Gyroscope)

      • 含义: 模拟设备的角速度。

      • 格式: "gyroscope:x=<float>,y=<float>,z=<float>"

        ldconsole action --index 1 --key call.sensor --value "gyroscope:x=0.5,y=-0.3,z=0.8"
        
    • 示例3: 磁力计 (Magnetic Field)

      • 含义: 模拟地磁场强度。

      • 格式: "magnetic_field:x=<float>,y=<float>,z=<float>"

        ldconsole action --index 1 --key call.sensor --value "magnetic_field:x=49.0,y=5.0,z=62.0"
        
    • 示例4: 重力传感器 (Gravity)

      • 含义: 模拟重力加速度。

      • 格式: "gravity:x=<float>,y=<float>,z=<float>"

        ldconsole action --index 1 --key call.sensor --value "gravity:x=0.0,y=0.0,z=9.8"
        
    • 示例5: 线性加速度传感器 (Linear Acceleration)

      • 含义: 模拟去除重力影响后的加速度。

      • 格式: "linear_acceleration:x=<float>,y=<float>,z=<float>"

        ldconsole action --index 1 --key call.sensor --value "linear_acceleration:x=1.0,y=0.0,z=0.0"
        
    • 示例6: 旋转矢量 (Rotation Vector)

      • 含义: 模拟设备的方向(旋转角度)。

      • 格式: "rotation_vector:x=<float>,y=<float>,z=<float>,cos=<float>"

        ldconsole action --index 1 --key call.sensor --value "rotation_vector:x=0.0,y=0.0,z=0.0,cos=1.0"
        
    • 示例7: 温度传感器 (Temperature)

      • 含义: 模拟环境温度。

      • 格式: "temperature:<float>"

        ldconsole action --index 1 --key call.sensor --value "temperature:25.5"
        
    • 示例8: 光传感器 (Light)

      • 含义: 模拟环境光照强度。

      • 格式: "light:<float>"

        ldconsole action --index 1 --key call.sensor --value "light:500.0"
        
    • 示例9: 压力传感器 (Pressure)

      • 含义: 模拟大气压强。

      • 格式: "pressure:<float>"

        ldconsole action --index 1 --key call.sensor --value "pressure:1013.25"
        
    • 示例10: 接近传感器 (Proximity)

      • 含义: 模拟物体与设备的距离(通常用于检测手机是否靠近耳朵)。

      • 格式: "proximity:<float>"

        ldconsole action --index 1 --key call.sensor --value "proximity:5.0"
        
    • 示例11: 湿度传感器 (Humidity)

      • 含义: 模拟相对湿度。

      • 格式: "humidity:<float>"

        ldconsole action --index 1 --key call.sensor --value "humidity:60.0"
        

注意事项

  • 权限: 确保你有足够的权限来执行这些命令。
  • 环境配置: 确保你的环境中已经配置好 ADB 工具,并且能够识别 ldconsolednconsole 命令。
  • 版本差异: 不同版本的雷电模拟器可能会有不同的 action 支持,建议查阅对应版本的官方文档获取最准确的支持列表。
  • 参数格式: 对于复杂的参数,如地理坐标、屏幕坐标等,请确保格式正确无误。

scan

扫描文件。

  • 参数:
    • --file <filepath>: 文件路径。
# 示例:扫描索引为 1 的模拟器中的 "example.txt" 文件
ldconsole scan --index 1 --file example.txt

sortWnd

对窗口进行排序。

# 示例:对所有模拟器窗口进行排序
ldconsole sortWnd

zoomIn

放大模拟器窗口。

# 示例:放大索引为 1 的模拟器窗口
ldconsole zoomIn --index 1

zoomOut

缩小模拟器窗口。

# 示例:缩小索引为 1 的模拟器窗口
ldconsole zoomOut --index 1

rock

摇动模拟器设备。

# 示例:摇动索引为 1 的模拟器设备
ldconsole rock --index 1

pull

从模拟器拉取文件到本地。

  • 参数:
    • --remote <filepath>: 远程文件路径。
    • --local <filepath>: 本地文件路径。
# 示例:从索引为 1 的模拟器中拉取 "example.txt" 到本地 "C:\temp\example.txt"
ldconsole pull --index 1 --remote /sdcard/example.txt --local C:\temp\example.txt

push

推送本地文件到模拟器。

  • 参数同 pull
# 示例:推送本地 "C:\temp\example.txt" 到索引为 1 的模拟器 "/sdcard/example.txt"
ldconsole push --index 1 --local C:\temp\example.txt --remote /sdcard/example.txt

backupapp

备份应用程序数据。

  • 参数:
    • --packagename <apk_package_name>: 应用程序包名。
    • --file <filepath>: 备份文件路径。
# 示例:备份名为 "com.example.app" 的应用数据到 "app_backup.zip"
ldconsole backupapp --index 1 --packagename com.example.app --file app_backup.zip

restoreapp

恢复应用程序数据。

  • 参数同 backupapp
# 示例:从 "app_backup.zip" 文件恢复名为 "com.example.app" 的应用数据
ldconsole restoreapp --index 1 --packagename com.example.app --file app_backup.zip

globalsetting

设置全局配置选项。

  • 参数:
    • --fps <0~60>: 设置帧率。
    • --audio <1 | 0>: 启用/禁用音频。
    • --fastplay <1 | 0>: 启用/禁用快速播放模式。
    • --cleanmode <1 | 0>: 启用/禁用清洁模式。
# 示例:启用音频并设置帧率为 30
ldconsole globalsetting --fps 30 --audio 1

launchex

扩展启动命令,可以附加额外参数启动应用。

  • 参数:
    • --packagename <apk_package_name>: 应用程序包名。
# 示例:启动名为 "com.example.app" 的应用,并附加额外参数
ldconsole launchex --index 1 --packagename com.example.app

operatelist

列出操作记录。

# 示例:列出索引为 1 的模拟器操作记录
ldconsole operatelist --index 1

operateinfo

获取操作记录信息。

  • 参数:
    • --file <filename>: 操作记录文件名。
# 示例:获取索引为 1 的模拟器操作记录信息并保存到 "operation_info.txt"
ldconsole operateinfo --index 1 --file operation_info.txt

operaterecord

记录操作内容。

  • 参数:
    • --content <jsonstring>: 操作内容 JSON 字符串。
# 示例:记录索引为 1 的模拟器操作内容
ldconsole operaterecord --index 1 --content '{"action":"click","position":[100,200]}'

注意事项

  • 权限:确保你有足够的权限来执行这些命令。
  • 路径:对于文件路径,请确保路径格式正确且文件存在。
  • 参数顺序:某些命令要求特定的参数顺序,请严格按照文档示例执行。
  • 环境配置:确保你的环境中已经配置好 ADB 工具,并且能够识别 ldconsolednconsole 命令。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值