Retrofit - Enqueue - Kotlin


class MainActivity : AppCompatActivity() {
private val fizzUrl = "https://s3-us-west-1.amazonaws.com/fizzup/files/public/"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
//Instance Retrofit
val retrofit = Retrofit.Builder()
.baseUrl(fizzUrl)
.addConverterFactory(MoshiConverterFactory.create())
.build()
//Instance Api
val service = retrofit.create(ExerciseService::class.java)
//Get Request
val call = service.listExercises()
//Get execution
call.enqueue(object: Callback<List<Exercise>> {
override fun onResponse(call: Call<List<Exercise>>, response: Response<List<Exercise>>) {
val allExercise = response.body()
if (allExercise!= null) {
println("All exercises are loaded :")
for (c in allExercise)
println(" one exercise : ${c.name}")
}
}
override fun onFailure(call: Call<List<Exercise>>, t: Throwable) {
error("KO")
}
})
}
这是我的主要活动。我有一个数据模型:锻炼我有一个接口ExerciceService。但是我有一个问题与enqueue方法告诉我:期待成员声明因此,我有一个关于对象的其他问题:期望的名称。但是我看了如何使用enqueue,我看到的都是我所做的。谢谢你读我的书,抱歉我的英语很差。

@Xetiam,

检查是否正确导入了Callback类。

你也可以在这里查看。他们有很棒的文档。

https://site-valley.com/2021/02/17/retrofit-android-tutorial-in-kotlin/

相关内容

  • 没有找到相关文章

最新更新