Забудьте об ошибке (что не работает во всех случаях: независимо от того, что такое файловая система, одновременная активность может ее отключить) и шифровать любой секретный файл. См. Следующие вопросы: Как зашифровать мой домашний раздел? Как я могу легко зашифровать файл? Есть ли альтернатива FileVault для Ubuntu
Вы проверили, что вы получаете достоверные данные из своего intent.extras?
Также я предлагаю вам использовать data class для ваших моделей. Он будет выглядеть примерно так:
data class ParentDetails(
var parent_id: Int = 0,
var parent_name: String = "",
var parent_email: String = "",
var parent_relation: String = "",
var parent_location: String = ""
)
Вы сможете использовать его следующим образом:
val new_parent = ParentDetails(
parent_name = intent.extras.getString("name"),
parent_email = intent.extras.getString("email"),
parent_relation = intent.extras.getString("parent_relation"),
parent_location = intent.extras.getString("locationdata")
)
println(new_parent.tostring())
Как уже упоминалось, у вас есть опечатка. toString возвращает хэш-код объекта, если он не переопределен, чтобы вернуть что-то еще. Посмотрите оригинальную реализацию для более подробной информации.
Переопределяя метод toString, вы меняете то, что он возвращает, и через это печатается, когда вы print(someClass). DVarga показал, что в их ответе.
Классы данных автоматически генерируют метод toString, содержащий содержимое класса. Поэтому создание класса данных является ярлыком для получения вывода, содержащего данные.
Причина, по которой метод, который у вас был, не работает, заключается в том, что вы его не вызывали. если вы вызываете его вместо toString, вы получите данные, напечатанные.
Кроме того, toString явно вызывается при печати класса. Вам не нужно называть print(someInstance.toString()), print(someInstance) достаточно.
И пока я пишу ответ, вам не нужно использовать вторичные конструкторы в Котлин. Первичные конструкторы значительно сократили ваш код, будь то класс данных или нет. Кроме того, вы должны изучить соглашения об именах.