Вы неправильно делаете добытчики.На самом деле вы их вообще не делаете.
Использование =
для переменной, даже в Kotlin, назначает ее при инициализации и никогда больше.
Изменение:
var username = preferences.getString(usernameKey, "")
set(value) = preferences.edit().putString(usernameKey, value).apply()
var password = preferences.getString(passKey, "")
set(value) = preferences.edit().putString(passKey, value).apply()
var token = preferences.getString(tokenKey, "")
set(value) = preferences.edit().putString(tokenKey, value).apply()
Кому:
var username: String
get() = preferences.getString(usernameKey, "")
set(value) = preferences.edit().putString(usernameKey, value).apply()
var password: String
get() = preferences.getString(passKey, "")
set(value) = preferences.edit().putString(passKey, value).apply()
var token: String
get() = preferences.getString(tokenKey, "")
set(value) = preferences.edit().putString(tokenKey, value).apply()