如何从属性文件构建Retrofit API?

时间:2017-09-23 14:16:07

标签: android retrofit2 dagger-2

是否可以构建一个改进API,其中路径,字段及其值取自property文件夹中的assets文件?例如:

interface StatusAPI {

    @FormUrlEncoded
    @POST("api path")
    fun readRawHtml(
            @Field("arg1 key") arg1: String = "arg1 value",
            @Field("arg2 key") arg2: String = "arg2 value",
            @Field("arg3 key") arg3: String = getArg3Value(),
    ): Single<String>

    private fun getArg3() = "arg3 value"

}

url.path = /path%20to%20api
form.key.arg1 = arg1key
form.value.arg1 = arg1value
form.key.arg2 = arg2key
form.value.arg2 = arg2value
form.key.arg3 = arg3key
form.value.arg3 = arg3value

PS:我知道如何读取属性文件并获取其值,我也使用Dagger2作为DI容器,如果改装API是一个类,我可以注入一个能够读取其中的属性文件的组件将是完美的,但由于Retrofit API是在界面中构建的,我不知道我能做什么就可以完成。

1 个答案:

答案 0 :(得分:0)

这是不可能的。 Retrofit使用动态代理并需要一个接口。