在Android上开发时,我有时会错过控制台(logcat)中的一些断言,所以我希望只要logcat中出现“Assert”消息就会收到通知,例如“咆哮”通知(我是在Mac OS X上。)
我尝试了这个简单的命令:
adb logcat | grep Assert | growlnotify
但在我杀死logcat进程之前它不会发送任何通知。
有什么想法吗?
答案 0 :(得分:0)
好的我已经能够使它工作,但我不得不使用外部脚本:
<强> growl-on-assert.sh 强>
#!/bin/bash
while read; do
COUNT=`echo "$REPLY" | grep -c Assert`
if [ $COUNT -ne 0 ]; then
echo "$REPLY" | growlnotify -t "Assert on logcat"
fi
done
然后在控制台中使用这个单行启动监控:
while [ 1 ]; do adb logcat -sv time *:E | growl-on-assert.sh; done
无限循环很有用,因此 adb 可以在设备连接/断开时自动重新连接。
欢迎任何改进,例如启动并行监控,同时连接多个设备/模拟器,或发送电子邮件而不是 growl 通知。 ; - )