前言
通常我们使用 AS 自带的 AVD 都是通过 run 一个项目来自动启动它的,并且该 AVD 在外部也没有相应的启动快捷方式,本文就介绍一下 Win、Mac 等平台下如何通过简单配置从外部一键启动 AS 内置 AVD,希望对你有所帮助。
1、通过 AS 创建 AVD
这一步无需多说,在 AS 内创建需要的模拟器即可,然后就可以关掉 AS 了
![](https://img.haomeiwen.com/i3551539/2d5fc7f1fd072683.png)
2、一行命令
无论是 Mac 或是 Win 都可以通过自带终端从外部启动 Android SDK 目录下的 emulator 。
-
首先通过终端进入 emulator 目录(位于 Android SDK 目录下)
$ cd /Users/skyrin/Library/Android/sdk/emulator/
-
然后我们通过终端查看一下创建好的 AVD 名称,后面会用到
$ emulator -list-avds
正常情况下就会显示刚刚创建好的 AVD 名称(例如 Nexus_5_API_27)
-
通过如下命令启动 AVD
$ emulator -netdelay none -netspeed full -avd Nexus_5_API_27
-
-netdelay none 不开启网络延迟仿真
-
-netspeed full 不做网络限速
-
-avd Nexus_5_API_27 指定 AVD 名称
更多选项使用 -help 查看
可以看到我的 AS 并没有启动而 AVD 从外部通过
emulator
成功启动 -
3、制作启动脚本
通过将启动命令封装成脚本即可一键执行任务,而非每次都通过终端命令执行,封装的步骤也很简单,只需要将相关命令放在当前平台可以识别的脚本类型文件中即可。需要注意的是在脚本中应该使用完整路径以便于系统可以直接找到emulator
,所以,完整的脚本内容应该是下面这个样子(请注意更换用户名)
/Users/skyrin/Library/Android/sdk/emulator/emulator -netdelay none -netspeed full -avd Nexus_5_API_27
在 Win 平台下通过文本工具记录启动命令并将其存储为.bat
格式文件即可双击执行。
在 Mac 平台下通过 AppleScript 来执行:
- 启动脚本编辑器
![](https://img.haomeiwen.com/i3551539/1f0afb3eacededb2.png)
-
编写 AppleScript 脚本,存储为应用程序即可
tell current application do shell script "/Users/luoyanlin/Library/Android/sdk/emulator/emulator -netdelay none -netspeed full -avd Nexus_5_API_27" end tell
![](https://img.haomeiwen.com/i3551539/e00feb0a10bb6e41.png)
然后在桌面上就可以像应用程序一样双击打开了😎
More
AppleScript 的强大远不止启动一个 AVD 这么简单,它还可以执行各种复杂的任务,提升你的工作效率,下面是我常用的几个脚本
![](https://img.haomeiwen.com/i3551539/41013ddfd515d40d.png)
- 清空下载目录(移动文件到垃圾桶)
tell application "Finder"
# 设置 “Downloads” 目录路径为 dls
set dls to folder "Downloads" of (path to home folder)
# 获取 dls 目录下文件个数
set itemCount to count of items in the dls
if itemCount > 0 then
# 如果存在文件则删除(移动文件到垃圾桶)
delete (every file of dls)
delete (every folder of dls)
else
# 没有文件就发出“咚咚”两声
beep 2
end if
end tell
- 永久清除下载目录
tell application "Finder"
# 设置 “Downloads” 目录路径为 dls
set dls to folder "Downloads" of (path to home folder)
# 获取 dls 目录下文件个数
set itemCount to count of items in the dls
if itemCount > 0 then
# 如果存在文件则删除(移动文件到垃圾桶)
delete (every file of dls)
delete (every folder of dls)
else
# 没有文件就发出“咚咚”两声
beep 2
end if
# 清理垃圾桶
set itemCount to count of items in the trash
if itemCount > 0 then
empty trash
end if
end tell
网友评论