2016-09-01 30 views
12

アンドロイドのモデムラジオログから情報をキャプチャする必要がありますが、キャプチャ方法はわかりません。私はたくさんの検索をしましたが、何も見つかりませんでした。アンドロイドにはbasebandに関する情報が必要なので、モデムログをキャプチャする必要があります。Androidでモデムラジオログをキャプチャする方法

ありがとうございます。

編集

私は、アプリケーション

logcatログをキャプチャするためのRead logcat programmatically within applicationを見つけました。しかし、それはadbのログadb logcat -b radioあるので、私は、アプリケーション内でADBのログをキャプチャする方法がわかりません。 1つのコメントでわかるように、私は可能かどうか疑問に思っています。

おかげ

+0

あなたは 'ADB logcat -b radio'で探していますか? – Robert

+0

はい、アプリケーション内で使用できますか? –

+0

いいえ、adb経由で、または現在のAndroidバージョンでroot権限を使用して実行する必要があります。 – Robert

答えて

1

はこのような何か試してみてください:

try { 
    Runtime rt = Runtime.getRuntime(); 
    //here you can add your params 
    String[] commands = {"logcat"}; 
    Process proc = rt.exec(commands); 

    BufferedReader stdInput = new BufferedReader(new 
      InputStreamReader(proc.getInputStream())); 

    BufferedReader stdError = new BufferedReader(new 
      InputStreamReader(proc.getErrorStream())); 

    String s; 
    while ((s = stdInput.readLine()) != null) { 
     //here is your logcat 
     Log.i("logcat", s); 
    } 

    while ((s = stdError.readLine()) != null) { 
     Log.e("logcat", s); 
    } 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

をあなたはlogcatを読み取るためにルートが必要になる場合があります覚えておいてください。

UPD:作業例 - https://github.com/sssemil/SampleLogcatApp

+0

@sssmeilありがとう、それは良いですが、あなたの代わりにこのコマンド 'adb logcat -b radio'を試しても動作しません。私はADBコマンドがこのように実行できないためだと思います。私は正しい? –

+0

"内側"の場合は "adb"を追加する必要はありません。 「logcat -b radio」と入力してください。同じコマンドが内部logcatに有効かどうかは確信していますが、引き続き試すことができます。そして、あなたは他のアプリのlogcatを読むためにrootアクセスが必要です。 – sssemil

+0

このコマンドは、adbなしでは動作しません。私は元のコマンドを試してみると、「tcp:5038」をバインドできません。 –

関連する問題