7.1 Retrofit + OkHttp

interface Api { @GET("/users") suspend fun users(): List<User> }

val client = OkHttpClient.Builder()
    .addInterceptor(HttpLoggingInterceptor().apply { level = BODY })
    .build()

val retrofit = Retrofit.Builder()
    .client(client)
    .baseUrl("https://api.example.com")
    .addConverterFactory(GsonConverterFactory.create())
    .build()

val api = retrofit.create(Api::class.java)

7.2 序列化

  • Gson 或 kotlinx.serializationkotlin @Serializable data class User(val id: Int, val name: String) ## 7.3 网络状态与错误处理 - 超时、重试、连接性监控(ConnectivityManager)。