Ответ
Лучше всего запускать анимацию в onStart() или onResume(), так как на этом этапе Activity уже видима пользователю. onCreate() не подходит, потому что UI ещё не полностью отрисован.
Пример с onStart():
override fun onStart() {
super.onStart()
val view = findViewById<View>(R.id.animated_view)
view.animate()
.alpha(1f)
.setDuration(500)
.start()
}