0

次のように logcat データの配列リストを作成したい: time level tag text ..... 例:

06-13 13:34:43:434 W myApp blehblehbleh

logcat をフィルタリングしてこの結果を取得するにはどうすればよいですか? より正確には、「logcat -d」がすべてを取得するように見えるため、これらの値を取得するために .exec(" ") 部分に何が入りますか。

    log = new ArrayList<String>();
    try {
        process = Runtime.getRuntime().exec("logcat -d");
    } catch (IOException e1) {
        e1.printStackTrace();
    }
    bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
    try {

        while ((line = bufferedReader.readLine()) != null){
            log.add(line);

     }
4

2 に答える 2

2

これにより、YOUR_TAG_HERE からのすべてのログが出力され、残りは除外されます。

logcat -d YOUR_TAG_HERE:V *:S
于 2013-06-13T19:31:42.540 に答える
0

あなたは簡単に行うことができます

if (line.contains("myApp")) log.add(line);

ループ内で、アプリからの行のみを追加します。現在のセットアップでは、これが最も速い方法のようです。

于 2013-06-13T19:09:08.660 に答える