Help us understand the problem. What is going on with this article?

PCに接続できない環境でもLogcatのログを取得したい時に使えるアプリ「Logcat Recorder」の紹介

背景

Androidアプリのテストで、Logcatに出力されたログを収集したい時、方法として

  • Android StudioのLogcatを利用する
  • 端末とPCをUSB接続するなどしておき、adb logcat -v time > log.txtコマンドを叩いておく

があると思います。
ですが、耐久試験で1日以上放置しないといけなかったり、PCの環境に不安がある場合に、上記の方法だとどうしても難しい場合もあります。
そんな時に使えるアプリ「Logcat Recorder」を紹介したいと思います。

アプリの概要

https://apkpure.com/jp/logcat-recorder/com.namakerorin.neko
からの引用です。

PCに接続できないような環境下やlogを常時取得しておきたい局面などで重宝します。

■概要
・logcat出力をSDカードなどのストレージに出力します (任意のパスに切り替え可能です)
・logcatの出力形式は"-v threadtime" です
・logファイルは時間(1分~6時間)とサイズ(500KB~100MB)で自動的に分割します
・Broadcast Intentをlogに出力します (Battery、Telephony、Configulation、Wi-fi、Bluetooth、Mediaなど)
・logの全体サイズの制限できます (100MB~4GB、制限なし)
・logを参照したり削除ができるファイラーがついています

Android端末の環境

環境は以下の通りです。

  • 端末名: Xperia 10 Ⅱ
  • OS: Android 10

導入方法

https://apkpure.com/jp/logcat-recorder/com.namakerorin.neko
からAPKファイルをダウンロードします。

1.png

ダウンロードしたら、テストしたい端末とUSB接続するなどしておき、以下のコマンドでインストール&権限付与します。

adb install 'Logcat Recorder_v1.0.2_apkpure.com.apk'
adb shell pm grant com.namakerorin.neko android.permission.READ_LOGS

導入後、アプリを起動すると、以下のような権限許可の画面が出てきます。

2.jpg

両方とも許可したうえで「続行」をタップします。
すると、以下のようなダイアログが出てきます。(うろ覚えですが、Android 8では出てこなかったと思います。どのバージョンから出るようになったかは不明)

3.jpg

いったん「OK」をタップして次に進みます。
導入はこれで完了です。

使い方

アプリを有効にするには、「Record logcat」のトグルをONにするだけです。

4.jpg

ONにすると、ステータスバーのところにアプリアイコンが表示されます。
このアイコンが表示されている間は、ログが保存され続けることになります。
OFFにすると保存が中断されます。

保存されたログの確認方法

「Log viewer」をタップすると、以下の画面に遷移します。

5.jpg

日時ごとにどのくらいのデータ量が保存されているかが確認できます。
チェックボックスをタップすると、画面が以下のように変化し、ゴミ箱ボタンをタップするとログを削除することができます。

6.jpg

日時のテキストをタップすると、さらにテキストファイルが表示されます。
先ほどと同様、チェックボックスをタップすると、画面が以下のように変化し、ゴミ箱ボタンをタップするとログを削除することができます。

7.jpg

また、ファイル名をタップすると別アプリからファイルの中身を閲覧することができます。(私の環境ではエラーが出て表示できませんでした。。)

保存されたファイル群をPCにコピーすることもできて、その場合は以下コマンドを実行します。

adb pull /storage/emulated/0/neko/ [PC上の保存したい場所]

まとめ

PCに接続できないような環境下や、耐久試験などでLogcatのログを取得し続けたいときに使えるアプリ「Logcat Recorder」を紹介しました。
ただし、Android 10以降ではうまく動作しない可能性がありますので注意してください。
(もっといい方法があれば教えてくださると嬉しいです)

hiesiea
Androidアプリ開発をメインとしたフリーランスエンジニア。最近はWindowsアプリの勉強も始めました。プログラミング講師もやってました。 Java/Android/C#/Unity/Windows/Flutter/AWS/Kotlin/iOS/Swift/プログラミング講師/
https://kmd-htsh.com/
engineerlife
技術力をベースに人生を謳歌する人たちのコミュニティです。
https://community.camp-fire.jp/projects/view/280040
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした