我有一个类似于http://www.myexample.com/rss/choose.php?type=level&id=2
的网址,我想在我的Android应用中使用Retrofit。问题是type
是一个参数,可以采用不同的值,如level
,grade
等。
每次type
更改时我都无法调整Retrofit因为我得到了#34;这里不允许使用注释"在TestesInterface中。我期待这个post并应用于我的应用,但它无法正常工作。
static final String BASE_URL = "http://www.myexample.com/rss/";
public void start() {
Retrofit retrofit = new Retrofit.Builder().baseUrl(BASE_URL)
.addConverterFactory(SimpleXmlConverterFactory.create()).build();
TestesInterface testesInterface = retrofit.create(TestesInterface.class);
Call<Channel> call = testesInterface.loadChannel("choose.php?type=level&id=2");
call.enqueue(this);
}
我的界面:
public interface TestesInterface {
@GET
Call<Channel> loadChannel(@Url type);
}
这使我每次想要将类型更改为其他值时都应更改testesInterface.loadChannel("choose.php?type=level&id=2")
。这不起作用。你能帮我吗?
答案 0 :(得分:0)
尝试不同的方法后,我得到了解决方案。
我必须在接口上使用标记sp_rename
到@Query
和type
,并在我在start()中调用它时发送值:
id