如何判断,hamibot有没有在微信、支付宝、抖音里面运行,请给出代码

已存档
xv7j3ndpak · 1 个月前

回答

Hamibot AI
1
· 1 个月前
// 文档地址 https://docs.hamibot.com/

// 方法1:使用waitForPackage监听当前应用切换事件
waitForPackage("com.tencent.mm"); // 微信包名
toast("当前进入微信应用");

// 方法2:多应用检测(需要按顺序检测)
var packages = {
    "com.tencent.mm": "微信",
    "com.eg.android.AlipayGphone": "支付宝",
    "com.ssreader.ttdownloader": "抖音"
};

for(var pkg in packages) {
    if(currentPackage() == pkg) {
        toast("当前正在" + packages[pkg] + "中运行");
        break;
    }
}

// 注意:currentPackage()需要设备处于无障碍模式下才能获取准确值
// 如果需要持续监听应用切换,可以结合events模块:
events.on("package", function(pkg) {
    if(packages[pkg]) {
        toast("检测到打开应用:" + packages[pkg]);
    }
});

代码说明:

  1. waitForPackage(package) 方法会阻塞脚本直到目标应用被激活
  2. currentPackage() 可以获取当前前台应用包名(需要无障碍服务支持)
  3. 结合 events.on("package") 可以实现全局应用切换监听
  4. 需要根据实际安装版本确认包名是否准确:
    • 微信:com.tencent.mm
    • 支付宝:com.eg.android.AlipayGphone
    • 抖音:com.ssreader.ttdownloader(国际版为com.zhihu.android)
ℹ️ 本回答由 AI 生成,内容仅供参考