Из нашего разговора в комментариях кажется, что вы получаете json {"token": "..."}
от SharedDataManager.getInstance(context!!).applicationToken
. Это объясняет, почему, когда вы разделяете :
, вы печатаетесь в журнале "..."}
.
Существует множество способов десериализации json в Android. Вот несколько вариантов. Я думаю, что ванильный путь - это что-то вроде:
val root = JSONObject(SharedDataManager.getInstance(context!!).applicationToken)
val token = root.getString("token")
С этим вы получите токен в token
.
Однако, если у вас уже есть библиотека json, вы можете использовать ее. Например, с gson вы можете сделать что-то вроде:
data class TokenData(
@SerializedName("token")
val token: String)
val token = Gson().fromJson(
SharedDataManager.getInstance(context!!).applicationToken,
TokenData::class.java)
Теперь вы можете использовать token
.
С помощью Moshi с использованием библиотеки kotlin gen - com.squareup.moshi:moshi-kotlin-codegen
- вы можете определить вышеуказанную модель следующим образом:
@JsonClass(generateAdapter = true)
data class TokenData(
@Json(name = "token")
val token: String)
// Then get it like:
val token = Moshi.Builder()
.build()
.adapter(TokenData::class.java)
.fromJson(SharedDataManager.getInstance(context!!).applicationToken)
Это только некоторые варианты. Также есть популярный Джексон . Выберите тот, который лучше всего соответствует вашим потребностям. Надеюсь, это поможет