Closed4

[Android] なんもわからん

あざらしあざらし

Activityとライフサイクル

Activity

“Androidアプリの画面”に相当
⇒画面を持たないAndroidアプリはActivityも使わない

ライフサイクル

Activity(つまり画面) の、例えば画面起動するよーとか、バックグラウンドにいるよーとか、アプリ停止するよーとか、そういう状態の工程のこと
それぞれコールバックメソッドがあり、それぞれ実行されるタイミングが異なる
⇒「このときにこれを実行したい!」みたいな場合は、適切にコールバックを使えばおk!

※コールバック以外にも、finish() など、ライフサイクルをコントロールできるメソッドがあるよ

コールバックの内容は公式嫁
https://developer.android.com/guide/components/activities/intro-activities?hl=ja#mtal

これも読んだ

https://wa3.i-3-i.info/word12295.html
https://atmarkit.itmedia.co.jp/ait/articles/0901/19/news122.html
https://qiita.com/t_nana/items/cd66117d3424e045d084
https://atmarkit.itmedia.co.jp/ait/articles/1604/04/news011.html

あざらしあざらし

Handler とマルチスレッド

いわゆる非同期処理だとか、async / await だとか

メインスレッド

UIスレッドとも。読んで字のごとく「メインの処理」のこと。画面表示の処理とか

サブスレッド

ワーカースレッドとも。メインでやると重くなってしまうような処理をここで行う。通信とか

ではサブスレッドからメインスレッドに値を渡したいときは?

フォームの場合

「Invoke」を使うことで解決できるよねー。と。

https://cammy.co.jp/technical/c_invoke/

ほな Android はどうするの?

公式より

ただし、UI スレッドまたは「メイン」スレッド以外のスレッドから UI を更新することはできません。

https://developer.android.com/guide/components/processes-and-threads?hl=ja

ということで、それを解決してくれるのが「Handler」
⇒スレッド間の通信をしてくれる子

https://re-engines.com/2019/12/19/【java】handlerクラスについてまとめてみました/

このスクラップは2023/11/21にクローズされました