Android

Activityのタスクとは?

タスクとは 複数のActivityが連携して一つの仕事をこなす単位のこと。 例えばギャラリーアプリを起動して写真を選択し編集をタップ。編集は別のアプリを選択して別アプリを起動。ここまでが一つのタスク。 Androidスマ...
Android

AndroidでSqliteを実行した時にcatchするExceptionはどれ?

結論SQLiteExceptionとIllegalStateExceptionをcatchしておけば大丈夫そう。SQLiteExceptionは継承先見ればどういうときに発生するのかなんとなくわかると思う。 IllegalStateExc...
Android

[Kotlin] runBlockingTestとは

runBlockingTestはCoroutineを起動するlaunchやasync、delay関数を即時実行する効果がある。 ただ、テスト対象でCoroutineを起動しているのか、起動していないのかで対応が分かれる。 ou...
Android

[Couroutine]Jobをキャンセルするとどのタイミングで処理は止まる?

kotlinx.coroutines からの suspend 関数(withContext や delay など)はすべてキャンセルできます。 ここにヒントがあって、suspend関数は全て止まるのではなくwithConte...
Android

[Android]LiveDataのActive/InActiveの挙動

LiveDataの挙動 Home画面にいって(アプリが裏に行く)、アプリを起動してもLiveDataは発火しない。Home画面でアプリが裏にいる時に、データに更新があって再度アプリが起動すると発火する。 EventObserv...
UnitTest

GradleのUnitTestの実行を絞って早くする

AndroidStudioのやり方 パッケージを選択して右クリックでテスト実行を選択すればパッケージに絞ってテストできる。 Gradleコマンドのやり方 上記のAndroidStudioで実行されているコマンドを見ると以...
Android UI

RecyclerViewとLayoutManagerの話

RecyclerView 2種類のキャッシュであるScrapHeapとViewPoolを持っているスクロールしてViewが見えなくなるとremoveAndRecycleView()が呼ばれて見えなくなったViewはdetachAnd...