У меня есть простой случай Activity1 -> Activity2
.
В прошлом, когда я использовал startActivity(Intent(this, Activity2::class.java))
, проблем не было, и вызывался метод onCreate()
для Activity2
.
В моем текущем случае этого не происходит. У меня есть логи в методе onCreate()
, и они никогда не попадают. Но если я создаю onStart()
метод, он входит туда. Тем не менее, ни разу в моих журналах за время существования приложения onCreate()
из Activity2
никогда не попадало. Как это возможно. onCreate
- это требование до onStart
, подумал я.
Вот действительный код, на который я ссылаюсь выше.
class Activity1 : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Timber.d("onCreate")
setContentView(R.layout.activity_splash)
startActivity(Activity2.getIntent(this))
}
}
class Activity2 : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?, persistentState: PersistableBundle?) {
super.onCreate(savedInstanceState, persistentState)
Timber.d("onCreate") // Never gets touched
}
override fun onStart() {
super.onStart()
Timber.d("onStart"); // Is hit with no problems.
}
companion object {
fun getIntent(@NonNull context: Context) : Intent {
return Intent(context, Activity2::class.java)
}
}
}