Kotlinでprint()のように操作途中のログ(デバッグ)を出力表示させる方法

KotlinでSwiftのprint()って何に当たるの?
Kotlinでログ(デバッグ)を出力表示させる方法は?
こんな疑問に答えていきます。

アプリを開発していると、ログの打ち出しって大事ですよね。

ボタンを押した時に、ちゃんと機能しているのか
どこの分岐に辿り着いているか
などを1つ1つ確認したい時があります。

それがデバック作業であり、ログ確認作業です。

Androidの実機を繋いで操作をした時に、パソコン側に表示されるメッセージを自分で設定できます。

初めに理解しておいた方がいいですね。
swiftではprint()って書くやつです。
Javaのログ出力フレームワークを使用していきます。

僕はWordPressのブログでは月2万PV、自作のiPhoneアプリを2つリリースしています。
そんな僕が解説していきます。

作業環境

Android Studio Version 2.3.3
Kotlin 1.1.5
Mac OS Sierra 10.12.6

※記事内にプロモーションを含む場合があります

冒頭に「import android.util.Log」を記述

ログを打ち出したい場面にLog.d("TAG", "ここに出したい文字列を打ちます”)と書く

fun orangeButtonTapped(view: View) {
        if (applemode == true) {
            Log.d("TAG", "Applemode中はオレンジボタンは無効")
        } else {

TAGの部分を省略するとエラーになります

ここの「Android Monitor」を押す

※Android Monitorタブを選ぶ他はいじらなくてもそのままで大丈夫だと思います。
Debugカテゴリーを選んでいるのは、デバッグタグをつけたログだけを表示させたいからで、Verboseでも見れました

実機をつなげてアプリを操作する

ここに設定したログが表示されます

見にくいですね
Xcodeの3倍見にくいです

補足

Kotlinでもprint()が使えるけど、見れない

このログ表示作業は、swift3.0ではprint()でできます。
kotlinでもprint()が使えると書いてあるようです。
10秒だけ読んだんですが、おそらく
「printしてる(出力してる)ことはしてるけど、Android Studioでは見れないよ」
ということなんだと思います

Kotlinlang.org
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.io/print.html

Stack over Flow (Kotlin Android print to console)
https://stackoverflow.com/questions/38525403/kotlin-android-print-to-console

TAGってなに?=目印の機能だがぶっちゃけ必要なさげ

タグ機能で、目印のようにできるようです。

5秒考えましたが、個人的にこの機能はスマートでないので不要だと思います。
省略するとエラーになるのでとりあえず書いてます。

ログの種類の分類

ログの種類を分類できるようです。
swiftではprint()しか使わないで、用が足りてます。
個人的にこの機能は、スマートでないので、不要だと思います。

Log
https://developer.android.com/reference/android/util/Log.html

ログのウィンドウは、もっと見やすくならないの?

必要がある人は、フィルタとか、表示するジャンルを選べたりするようです

というわけで今回は以上です。

ぶっちゃけ、Swiftより複雑ですね。
機能が多いのはいいのですが、よく使う機能は洗練されていた方がいいなと感じました。

人気記事TweetDeckでおすすめの表示設定と使い方【Column(列)の並べ方】

人気記事Twitterの複数アカウントを一括管理する方法【TweetDeck】

-Kotlin
-, , , , , , ,