У меня есть следующие данные:
var dict: Map<String, Any> = listOf()
dict["p1"] = listOf(1, 3)
dict["p2"] = listOf(null, 2.1)
dict["p3"] = 1
Когда я передаю эти данные следующей функции:
@GET("uri?staticKey=staticValue")
fun testApi(@QueryMap(encoded = true) params: @JvmSuppressWildcards Map<String, Any>): Call<ResponseBody>
Я ожидаю, что URL запроса будет:
uri?staticKey=staticValue&
p1[0]=1&p1[1]=3&
p2[0]=&p2[1]=2.1&
p3=1
Но вот что это выдает:
uri?staticKey=staticValue&
p1=[1, 3]&
p2=[null, 2.1]&
p3=1
Я что-то не так делаю?Я только начал разработку Kotlin и Android, поэтому я не уверен, что это поддерживается библиотекой Retrofit / okhttp.
Примечание Мне нужна такая функция, как Map<String, Any>
, чтобы легкодобавить / удалить параметры запроса.