16

IntelliJで、エラーを探すためにlogcatを読み取ろうとしています。

問題は、すべてのアプリケーションのログが「Android」ウィンドウに表示されることです。

関連するログのみを表示するにはどうすればよいですか?

例外スロー、JNIからのSegfaultsなどを表示したいので、タグを探していません。

ありがとう !

4

4 に答える 4

5

アプリケーション(パッケージ)に基づくフィルタリングは、IntelliJ IDEA(現在のバージョン:12)では使用できません。

于 2013-01-11T22:40:34.417 に答える
4

編集:水平方向のルールより上のすべてが私の新しい答えです(2013年5月17日更新):

新しいAndroidStudioIDE(IntelliJをベースにしています)に移行することをお勧めします。これにより、パッケージ名によるフィルタリングが可能になります。


ここで追加される機能に投票できます:http://youtrack.jetbrains.com/issue/IDEA-95780

それまでの間、Android Logクラスをラップして、フィルタリングできるサフィックス/プレフィックスを追加することを検討してください。次のようなもの:

/**
 * Wrapper for the Android {@link Log} class.
 * <br><br>
 * The primary reason for doing this is to add a unique prefix to all tags for easier filtering
 * in IntelliJ IDEA (since in v12 there is no way to filter by application).
 *
 * @author gloesch
 */
public class Logger {

    private static final String FILTER = "(MY APP) ";

    public static void d(String tag, String message) {
        Log.d(tag.concat(FILTER), message);
    }

    public static void i(String tag, String message) {
        Log.i(tag.concat(FILTER), message);
    }

    public static void v(String tag, String message) {
        Log.v(tag.concat(FILTER), message);
    }

    public static void e(String tag, String message) {
        Log.e(tag.concat(FILTER), message);
    }

    public static void w(String tag, String message) {
        Log.w(tag.concat(FILTER), message);
    }

    public static void wtf(String tag, String message) {
        Log.wtf(tag.concat(FILTER), message);
    }
}
于 2013-04-04T22:07:59.177 に答える
1

プロセスID(PID)でフィルタリングできます。

PIDでフィルタリング

唯一の欠点は、PIDが変更され、アプリを再起動するたびにフィルターを調整する必要があることです。

于 2012-09-15T15:33:24.543 に答える
0

あなたがやろうとしていることに依存します。logcatウィンドウには、「Filters」という名前の[非]空のウィンドウがあり、その横に+または-が表示されます(IntelliJ IDEA 12に表示されます)。次のようなウィンドウがポップアップ表示されます。

フィルタウィンドウ

ログタグが必要なものでない場合は、ログメッセージ自体の正規表現に基づいてフィルタリングできます(たとえば、メッセージが常にで始まる場合はseek error、入力するseekと検索されます。ログレベルを詳細に設定すると、一致するはずです。 logcatに書き込まれるものすべて。

于 2013-01-08T17:36:46.367 に答える