虽然所有sendXXXXX布尔都是真的,但代码在第一个notify()处停止执行。如果我手动将第一个设置为false,则代码将在第二个if语句内停止执行。
当调用.notify()时,它就像一个return语句。它退出函数但不会抛出任何错误/异常。
if (sendAC) {
mNotificationManager.notify(XMPP_ID, notificationHouse);
}
if (sendRefridgerator) {
mNotificationManager.notify(XMPP_IDRefridgerator, notificationRefridgerator);
}
if (sendWater) {
mNotificationManager.notify(XMPP_IDWater, notificationWater);
}
答案 0 :(得分:1)
好的,几个小时后才知道了。这是一个无声的异常(它没有出现在Logcat中)。我在调试器中逐步完成了该线程,它显示了一个安全异常。所以我添加了一个try catch来解决错误是什么。我只是在清单中没有振动权限,所以我得到了一个SecurityException,但没有捕获它就没有显示。
答案 1 :(得分:0)
清理项目,然后重新安装。我猜测调试器没有进入下一个if语句的原因是因为下面的代码没有加载到设备上。
要不然,或者你搞砸了if语句的括号