分享一个mac下命令行打开Android模拟器的脚本

870 阅读2分钟

有些时候只是单纯的想启动Android模拟器,而不必一定要启动Android Studio去启动它时可以用到这个方法。当然,该功能学习成分分享更多。

我们都知道,在配置好Android的环境变量之后就可以通过emulator命令来启动Android模拟器。但是,人总是懒的,懒得1句代码也不想输。所以我们开始一劳永逸吧!

  1. 确保Android环境变量已配置好,比如我的:
#---Android环境变量配置 开始---
export ANDROID_HOME="/Users/parcool/Android/SDK"
export ANDROID_ADB="$ANDROID_HOME/platform-tools"
export ANDROID_EMULATOR="$ANDROID_HOME/emulator"
export PATH="$PATH:$ANDROID_ADB:$ANDROID_EMULATOR"
#---Android环境变量配置 结束---
  1. 在桌面创建一个叫start_avd.sh的文件,并粘贴如下内容:
#!/bin/bash

# 列出所有的模拟器
available_avds=($(emulator -list-avds))

# 计算模拟器数量
avd_count=${#available_avds[@]}

# 如果只有一个模拟器,直接启动它
if [ $avd_count -eq 1 ]; then
    echo "启动模拟器:${available_avds[0]}"
    nohup emulator -avd "${available_avds[0]}" >/dev/null 2>&1 &
    exit 0
fi

# 显示模拟器列表
echo "可用的模拟器:"
for i in "${!available_avds[@]}"; do
    echo "[$i] ${available_avds[$i]}"
done

# 获取用户输入并启动选定的模拟器
while true; do
    read -p "请输入模拟器编号并按回车键启动: " avd_index
    if [[ $avd_index =~ ^[0-9]+$ ]] && [ $avd_index -ge 0 ] && [ $avd_index -lt $avd_count ]; then
        echo "启动模拟器:${available_avds[$avd_index]}"
        nohup emulator -avd "${available_avds[$avd_index]}" >/dev/null 2>&1 &
        break
    else
        echo "无效的输入,请重新输入"
    fi
done
  1. 添加运行权限并使用
# 添加运行权限
$ chmod +x start_avd.sh
# 以后每次想启动模拟器的时候就运行它就完事
$ ./start_avd.sh

该sh会在你只创建了一个模拟器的情况下运行后就直接启动;如果你有多个模拟器,运行后根据提示输入对应的数字(如:0,1,2…)后回车就启动。

如果你够懒,懒命令行都不想打开,只要双击打开。那可以使用MacOS自带的软件‘自动操作’来完成脚本封装:

  1. 打开“应用程序”文件夹,然后打开“实用工具”文件夹。
  2. 找到并打开“自动操作”应用程序。
  3. 在自动操作中,选择“文件” > “新建”或直接按 Command+N 打开新文档选择器。
  4. 选择“应用程序”作为文档类型,然后点击“选择”按钮。
  5. 在左侧的“库”面板中,找到并拖动“运行 Shell 脚本”操作到右侧的工作流程面板。
  6. 在“运行 Shell 脚本”操作中,将“Shell”下拉菜单设置为“/bin/bash”。
  7. 将上面提供的脚本内容粘贴到文本框中,替换掉现有的默认文本。
  8. 选择“文件” > “保存”以保存应用程序。为应用程序命名,例如“Start Android Emulator”,然后选择合适的位置保存它。

现在可以直接双击“Start Android Emulator”替代命令操作了。