【发布时间】:2013-04-05 01:15:35
【问题描述】:
我正在使用Android Annotations Framework,专门用于 Rest 集成。 我有以下代码。
主机配置界面
public interface Host {
public String URL = "http://192.168.2.137";
}
还有用于 Rest 通信的带注释接口。
@Rest(rootUrl = Host.URL, converters = { MappingJacksonHttpMessageConverter.class })
public interface RestClient {
@Get("/entities.json")
Entity[] allEntities();
}
我的问题是,为什么注释属性 Rest.rootUrl 的值必须是常量表达式?以及如何为 Rest.rootUrl 使用字符串资源?
我想做类似的事情
@EBean
public class Host{
@StringRes
String URL;
}
但是使用 RestClient 接口是不可能的。
这个想法是处理一个本地化的 rest 应用程序,假设不同语言的 URL
http://en.myapp.com
http://es.myapp.com
我知道 Java 接口必须具有最终属性,但是有办法处理本地化的 rootUrl 值吗?
谢谢。
【问题讨论】:
标签: java android rest android-annotations