0

Androidで開発していると、コンソール(logcat)でいくつかのアサートを見逃すことがあるので、logcatに「Assert」メッセージが届くたびに通知を受け取りたいと思います。たとえば、「growl」通知があります(Mac OSを使用しています)。バツ)。

私はこの簡単なコマンドを試しました:

adb logcat | grep Assert | growlnotify

しかし、logcatプロセスを強制終了するまで通知は送信されません。

何か案は?

4

1 に答える 1

0

OK私はそれを機能させることができましたが、外部スクリプトを使用する必要がありました:

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が自動的に再接続できるようにするために役立ちます。

同時に複数のデバイス/シミュレータが接続されているParallelsモニタリングを起動したり、うなり声の通知の代わりに電子メールを送信したりするなど、あらゆる改善を歓迎します。;-)

于 2012-05-22T19:43:44.150 に答える