Android

AndroidアプリのLogCatを端末に保存するサンプルコード

投稿日:2016年6月29日 更新日:


AndroidアプリLogcatを端末に保存する方法のご紹介です。
サプルソースを掲載してますので、コピペですぐにご自身のアプリに組み込めます!
良かったらご利用下さい!

保存したログファイルは、アプリ自身で表示したり、PCからUSB接続経由で確認したりできますので、不具合調査などに役立つかと思います。

では実装方法の解説です。

スポンサーリンク

AndroidManifest.xmlを修正する

まずは、Logcatをを読み込む権限を追加します。
デフォルトの権限だと読み込めないんですね。

下記の一行をAndroidManifest.xmlに追記すればOK。

logcatの内容を保存するスレッドクラスのサンプル

Logcatの内容をリアルタイムで監視してテキストファイルへ出力するスレッドクラスを実装します。
下記のソースコードをコピペOKです。

スレッドクラス

 

あとは、このスレッドをメインの処理からキックして下さい。

 

はい!これで実装完了です!!

ソースを載せるだけでは味気ないので、簡単にソースの解説をしておきますね。(とても簡単に)

Runtime.getRuntime().exec() を利用してlogcatの内容をBufferedReaderへ読み込む事ができます。
あとは、通常のファイル入出力と一緒ですね。
logcatのログが出るのを常に監視する必要があるので、別スレッドを立てて無限ループで処理させています。

要点としたらこのくらいでしょうか。

ローカルファイルの中身の確認方法

出力したログファイルは、アプリ内で表示する事も可能です!

外部の記事ですが、【Android】ローカルにファイルを保存、書き出し・読込み・削除をする方法を参考に実装出来ると思います。

また、PCとUSB接続してログファイルを確認する事も出来ます。
確認方法はAndroidのローカルファイルをPCから確認する方法にまとめてます。

おわりに

デバッグ中だとlogcatの内容を確認出来るのですが、運用時にエラーが発生した際にログの内容が確認出来ないんですよね。
この方法でログをローカルに保存しておくと、後からでもログを確認出来るので、不具合の調査に役立ちます。

最後までお読み頂きありがとうございました!

スポンサーリンク


-Android

執筆者:


  1. higekick より:

    参考にさせていただきました。
    logcatのログをファイルに吐くことができました。
    adb shellでそのログをPCに持ってきて解析もできました!
    ありがとうございます!

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

MOVERIO(bt-300)にスマホアプリを移植(GoogleMapsは使用不可)

MOVERIO bt-300にAndroidスマホ向けに開発したアプリを移植する際に発生したエラーと解決方法のメモです。 開発環境はEclipse(Kepler)です。 スポンサーリンク 目次ビルドタ …

AndroidのローカルファイルをPCから確認する方法

androidのアプリには、アプリ毎のデータの保存領域があります。 この領域に保存したファイルをローカルファイルと言います。 ローカルファイルは、下記のようなディレクトリに保存されます。 /data/ …

フォスターフリーランス
プロフィール

このサイトを運営しているこへいんです。
アングラーのフリープログラマー。 主にプログラミングと釣の話を発信しています。
プログラミングで自由になり思う存分に釣りをしまくる生活実践中。
詳しいプロフィールはこちら