auto.js 中文文档 下载 App

启动与关闭应用——launchApp、launchPackage、后台应用切换

启动应用

launchApp() — 通过应用名启动

launchApp("淘宝");
launchApp("微信");

中文应用名,Auto.js 会自动匹配系统里已安装的应用。

launchPackage() — 通过包名启动(更准确)

launchPackage("com.taobao.taobao");
launchPackage("com.tencent.mm");

包名方式不会受应用名变动影响,推荐在生产脚本中使用。

startActivity() — 更灵活的启动

app.startActivity({
  packageName: "com.taobao.taobao",
  className: "com.taobao.taobao.TaobaoHomeActivity"
});

可以指定要打开的 Activity,跳到应用内部特定页面。也可以打开系统设置页面:

app.startActivity({ action: "android.settings.ACCESSIBILITY_SETTINGS" });

关闭应用

back() — 返回键

back();           // 按一次返回键
home();           // 回到桌面
recent();         // 打开最近任务列表

forceStop(packageName) — 强制停止

app.forceStop("com.taobao.taobao");

注意:forceStop 需要特殊权限,普通脚本不一定能用。

判断应用是否在前台

if (currentPackage() == "com.taobao.taobao") {
  log("淘宝正在前台运行");
}

实战:启动并等待加载完成

launchApp("淘宝");

// 等待淘宝首页加载——等「搜索框」出现
id("com.taobao.taobao:id/rl_search").waitFor(10000);
log("淘宝已就绪");

常用应用包名速查

应用包名
微信com.tencent.mm
淘宝com.taobao.taobao
支付宝com.eg.android.AlipayGphone
京东com.jingdong.app.mall
抖音com.ss.android.ugc.aweme
QQcom.tencent.mobileqq
网易云音乐com.netease.cloudmusic
高德地图com.autonavi.minimap

不确定包名时,悬浮窗 → 「查看包名」即可获取当前前台应用的包名和 Activity。