The object must be either Serializable or Parcelable.
For example, Location class is Parcelable, so it can be used to be passed between activity.
val EXTRA_LOCATION = "location"val intent = Intent(context, PlacePickerActivity::class.java).apply { putExtra(EXTRA_LOCATION, location)}startActivity(intent)To receive Parcelable from Intent.
val location = intent.getParcelableExtra(EXTRA_LOCATION)val location = intent.extras.get(EXTRA_LOCATION) as Location?For your own class, the easiet way is to implement Serializable.
class PlaceAutoComplete(val id: String, val name: String) : Serializable {}val place = intent.getSerializableExtra(EXTRA_PLACE) as PlaceAutoComplete?References: