2010年5月19日水曜日

LogcatをAndroid端末上で見るツール LogcatViewer



LogcatをAndroid端末上で見るツール LogcatViewer を公開します。


f:id:bs-android:20100519002400p:image f:id:bs-android:20100519002401p:image


LogcatViewerは、普段PC上でDDMSを使用して見るLogcatを、Androidの端末単体で


見ることが出来るツールです。


ダウンロードは こちら です。(ソースコードも含む)


apkファイルはbinディレクトリに格納されています。





ログを見るだけではなく、SDカードにテキスト形式で保存する事が出来ます。


サービス化&スレッド化をしているので、別アプリのLog収集や、PCが無い環境でのテスト・


デバッグ時に、端末のみでログの確認をしたい場合に使えるかと思います。


ソースも同梱していますので、ログ出力を行うフィルタをカスタマイズしてみるなど、


ご活用いただけますと幸いです。






使用方法


ボタン操作






保存SD保存ファイル名」テキストボックスで入力されたファイル名で、ログファイルを保存します。
更新最新のLogcatログを取得し、表示領域に反映させます。




リスト操作





リストクリッククリックしたリストのログ情報を、AlertDialogで表示します。

メニュー操作






ログ取得サービス開始ログ取得サービス開始します。
ログ取得サービス停止ログ取得サービス停止します。

ログの取得はサービス側で行うため、LogcatViewerアプリを完全に停止したい場合は、


ログ取得サービスを停止した上、アプリを終了してください。


更新ボタンを押下する毎に、その時点での最新のログが行末に追加されていきます。


なお、デバイス上でのログの確認がしやすいように、自動更新はあえてしていません。





保存・表示上限について


SDカード保存:30000行


表示:1000行


としています。





LogcatViewerService.java の定数の定義値を変更する事により、


保存・表示行数の増減が可能です。





LOGCAT_SAVE_MAXLINES - 保存行数


LOGCAT_DISP_MAXLINES - 表示行数





技術的なお話


350行程度のソースに、


・サービス制御

・スレッド

・synchronizedを使用した排他制御

・ListViewのシンプルな使用方法

・Android端末内のコマンド実行方法

・AlertDialogのシンプルな使用方法

等、色々と詰め込んでみました。


以下、簡単な解説です。





サービス制御

LogcatViewer画面(Activity)がバックグラウンド(Pause)状態になっても、継続して


ログ収集処理が行えるように、ログ収集部をサービス化しています。


スレッド

サービスから起動されるログ収集本体部をスレッドで実装しています。


synchronizedを使用した排他制御

スレッドを終了させるための割り込みを行うために使用しています。


ListViewのシンプルな使用方法

ログ表示を行うために、サービスからListで取得したログを、setListAdapterで


ListViewに設定しています。


Android端末内のコマンド実行方法

Android端末内 /system/bin に格納されているコマンドを java.lang.Runtimeを


利用して実行しています。


AlertDialogのシンプルな使用方法

リスト選択を行った場合のログの表示を行う際に、AlertDialog.Builderを


使用して簡潔に実装しています。



by 勉どろいどチーム いずみけんじ





140 180 Android , アプリ

記載されている会社名、および商品名等は、各社の商標または登録商標です。

1 コメント:

  1. ソースを見させて頂きましたが、Copyrightやソースの流用の際のライセンスを見つけられませんでした。
    >ソースも同梱していますので、ログ出力を行うフィルタをカスタマイズしてみるなど、
    >ご活用いただけますと幸いです。
    との事で、流用するにしても、どのようなライセンスなのかわからないと取り扱いようがないので教えて頂けるとありがたいです。

    返信削除

Related Posts Plugin for WordPress, Blogger...