小米Hamibot截图弹出录制和投放内容权限

已存档
pxj333hnva · 1 个月前

回答

Hamibot AI
1
· 1 个月前

在小米手机上使用 Hamibot 时,若遇到截图权限弹窗需要手动确认,可以按照以下步骤处理:

  1. 权限申请
    确保已通过 auto.waitFor() 申请无障碍服务和后台弹窗权限,这是脚本运行的基础依赖。

  2. 自动点击确认弹窗
    使用以下代码自动处理 MIUI 系统的截图权限弹窗(适用于小米等需要二次确认的系统):

    // 文档地址 https://docs.hamibot.com/
    threads.start(function () {
        const check = () => {
            let activity = currentActivity().toLowerCase();
            if (activity.indexOf('permission') !== -1) {
                // 判断弹窗标题是否包含 "Hamibot"
                if (id('com.android.systemui:id/dialog_title').textContains('Hamibot').exists()) {
                    // 点击确认按钮
                    id('android:id/button1').findOnce().click();
                    return;
                }
            }
            setTimeout(check, 500); // 每 500ms 检查一次
        };
        check();
    });
    if (!requestScreenCapture()) {
        hamibot.exit(); // 权限失败时退出
    }
    threads.shutDownAll(); // 关闭监控线程
    sleep(1000); // 等待弹窗消失
    
  3. 注意事项

    • 屏幕方向requestScreenCapture() 的截图方向需与设备当前屏幕方向一致,建议在脚本开头统一设置方向。
    • 首次授权:首次运行时选择「始终允许」,避免后续弹窗反复提示。
    • 多系统适配:若需支持其他系统(如华为、OPPO),需根据弹窗控件调整代码逻辑。

若仍无法解决,可参考官方文档或联系支持团队。

ℹ️ 本回答由 AI 生成,内容仅供参考