はじめに
UnityアプリをビルドしてAndroid
でデバッグする際に、ログを調べたい場合もあるでしょう。そんなときにAndroid Studio
のLogcat
を利用することでログを確認することができます。
実際にLogcat
でログを確認するまでの手法を紹介したいと思います。
Android Studioのインストール
今回はAndroid Studio
を利用した方法をとるので、Android Studioをインストールしていない人はインストールしてください。
developer.android.com
ちなみにJetBrains Toolbox
からAndroid Studio
をインストールすることも可能なので、JetBrains
ユーザーは是非活用してみてください。
Android Studioを立ち上げLogcatを開く
Android Studio
を立ち上げ、適当なプロジェクトを作成します。(New Project
を選択しプロジェクトを作成する)
またすでに何かしらのプロジェクトが作成済みであれば、そちらを開きます。
プロジェクトを開くとメニューバーのView -> Tool Windows -> Logcat
を選択して、Logcat
ウィンドウを立ち上げます。
Android端末と接続する
Unity
のアプリをビルドしてAndroidに送ります。(手法は各々に任せます)
するとLogcat
に大量のログが出力されているかと思います。フィルタをかけていない場合はシステム周りのログなどUnityのアプリに関係ないものも含まれているので、ある程度フィルタをかけて調べたいものを絞った方が良いでしょう。
Logcatのフィルタ
ログが読みづらい場合はクエリを書くことでフィルタをかけることができます。クエリを書く場所は以下の画像を参考にしてみてください。
// フィルタの例 package:com.CompanyName.ProductName tag:Unity
tag
: ログエントリのtag
フィールドに一致します。package
: ロギングアプリのパッケージ名に一致します。process
: ロギングアプリのプロセス名に一致します。message
: ログエントリのメッセージ部分に一致します。level
: 指定した重大度以上のログレベル(例:DEBUG
)に一致します。age
: エントリのタイムスタンプが最新である場合に一致します。値は、数値の後に時間単位を示す文字を付けて指定します。時間単位は、s
(秒)、m
(分)、h
(時間)、d
(日)です。たとえば、age: 5m
を指定すると、過去 5 分間にログに記録されたメッセージのみがフィルタされます。
Logcat でログを表示する | Android Studio | Android Developers
詳細は公式ドキュメントを見てください。
ツールバー
Logcatの左側にあるツールバーを用いることでログを削除したり、取得を一時停止・再開したり、最新のログまでスクロールしたりなどの操作を行うことができます。
上手に活用すると快適に利用できるでしょう。
UnityのLogとの関係性
以下のコードを実行したときにLogcat
でどのような表示になるのか確認してみましょう。
Debug.Log("Debug.Logのサンプル"); Debug.LogWarning("Debug.LogWarningのサンプル"); Debug.LogError("Debug.LogErrorのサンプル"); Debug.LogException(new Exception("Debug.LogExceptionのサンプル"));
ちゃんとLogcatに出力されていることが確認できました。
さいごに
今回はAndroid Studio
を利用した方法を紹介しましたが、Unityの場合は公式パッケージAndroid Logcat
があったり、Rider
でも確認する方法があったりします。
機会があればそれらも紹介したいと思います。