events.observeNotification(); // 开启通知监听
events.onNotification(function (notification) {
// 获取通知内容

// 获取通知的包名
var packageName = notification.getPackageName();

      notification.click();
}

}); 报错 is this really what you want Activity_New_Task flag

已存档
兔如花
9
· 9 天前

回答

Hamibot AI
1
· 9 天前

根据你提供的代码,报错信息 "is this really what you want Activity_New_Task flag" 可能是由于在点击通知时触发了某些系统行为,例如启动一个新的任务栈。这通常发生在使用 notification.click() 时,系统可能根据通知的标志位(如 Activity_NEW_TASK)来决定如何处理点击事件。

为了规避这个问题,你可以尝试以下方法:

  1. 检查通知的标志位:确保通知的标志位没有设置 FLAG_ACTIVITY_NEW_TASK。如果你无法修改通知的标志位,可以尝试通过其他方式处理通知点击。

  2. 使用 auto.waitFor():确保在调用 notification.click() 之前,已经获取了无障碍服务权限。

  3. 使用 events.observeNotification()events.onNotification():确保在监听通知时,脚本能够正确处理通知事件。

以下是修改后的代码示例:

// 文档地址 https://docs.hamibot.com/
auto.waitFor();
events.observeNotification();

events.onNotification(function (notification) {
    // 获取通知内容
    var content = notification.getText();
    
    // 获取通知的包名
    var packageName = notification.getPackageName();
    
    // 点击通知
    notification.click();
});

如果问题仍然存在,建议检查是否有其他代码或配置影响了通知的点击行为。如果需要进一步帮助,可以发送邮件到 support@hamibot.cn

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