How to Pass custom object via intent in kotlin

First, make sure the People class implements the Serializable interface:

class People : Serializable {
    // your stuff
}

Inner fields of People class must also implement the Serializable interface, otherwise you’ll get runtime error.

Then it should work:

fun launchNextScreen(context: Context, people: People): Intent {
    val intent = Intent(context, NextScreenActivity::class.java)
    intent.putExtra(EXTRA_PEOPLE, people)
    return intent
}

To receive people back from Intent you’ll need to call:

val people = intent.getSerializableExtra(EXTRA_PEOPLE) as? People

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)