これまでSharedPreferenceで判定していたのですが、AppLaunchCheckerで簡単に制御できたので使ってみました。
参考URL => https://qiita.com/inuko/items/399a4431941dd6b3160b
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_sub)
val before = AppLaunchChecker.hasStartedFromLauncher(applicationContext)
AppLaunchChecker.onActivityCreate(this)
val after = AppLaunchChecker.hasStartedFromLauncher(applicationContext)
}
ちょっとしたハマりポイントになりますが、AppLaunchChecker.onActivityCreate(this)
は android.intent.category.LAUNCHER
のActivityでしか動作しません。
当初奥の階層の画面で初回起動判定の処理が必要だったので、そこで処理後に更新をする予定でしたがうまく行かず・・・
私は AppLaunchChecker.onActivityCreate(this)
は最初のActivityで行い、
AppLaunchChecker.hasStartedFromLauncher(applicationContext)
の結果はApplicationクラスで保存することで、対応しました