如何从 Kotlin 中的 url 获取 GeoJson 数据

how can I get GeoJson data from a url in Kotlin

我是 kotlin 的初学者,我想获得 url:

中包含的信息

在我的例子中,我有一个 url 的列表,每个 url 都包含以 geojson 格式设置的信息,我想获取此信息。 有人知道我该怎么做吗?

这是可以在我的列表中找到的 url 的示例:

https://database-geojsons-test.s3.amazonaws.com/COOPERATIVES/Maps%2520test/Exploitation/Alpha/Alpha.geojson

这很简单,因为我使用 Retrofit 我创建了一个方法来检索 json 内容

@GET
    suspend fun getGeoJsonData(@Url url: String) : String

我可以通过为每个 json

调用此方法来检索内容

您可以使用 Retrofit 并添加一个 Gson converterFactory。您可以在 android 开发者网站上阅读更多相关信息。

这里只是一个例子:

private val BASE_URL : String = "http [your URL]"

val interceptor: HttpLoggingInterceptor = HttpLoggingInterceptor().apply {
        this.level = HttpLoggingInterceptor.Level.BODY
    }

val client: OkHttpClient = OkHttpClient.Builder().apply {
        this.addInterceptor(interceptor)
    }.build()

private val retrofit = Retrofit.Builder()
            .baseUrl(BASE_URL)
            .client(client)
            .addConverterFactory(GsonConverterFactory.create()) //Converters can be added to support other types in body
            .build()

希望对你有用:)