如何使用Retrofit在一个活动中解析2个URL

时间:2017-12-14 14:10:47

标签: java android android-activity retrofit2

如何在一个活动中解析2个或更多URL。有2个基本网址

private static final String BASE_URL_1 = "https://www.somesite.com";
private static final String BASE_URL_2 = "https://www.somesite.com";

它们以两种不同的方法处理。每个方法都实例化retrofit

1)

private void init(){
    //initialising retrofit
    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(BASE_URL_1)
            //converter XML
            .addConverterFactory(SimpleXmlConverterFactory.create())
            .build();

    FeedTechCrunchAPI feedTechCrunch = retrofit.create(FeedTechCrunchAPI.class);

    Call<RssFeed> call = feedTechCrunch.getTechCrunch();

    //starting callbacks
    call.enqueue(new Callback<RssFeed>() 
}

2)

private void initActive(){
    //initialising retrofit
    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(BASE_URL_2)
            //converter XML
            .addConverterFactory(SimpleXmlConverterFactory.create())
            .build();

    FeedVergeAPI feedVerge = retrofit.create(FeedVergeAPI.class);

    Call<FeedFeed> call = feedVerge.getFeedVerge();

    //starting callbacks
    call.enqueue(new Callback<FeedFeed>()
}

我在onCreate

中称这两种方法
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Log.d(TAG, "starting");
    initActive();
    init();
}

但只调用了init()。但是,如果我摆脱init()第二个被调用。任何想法?
这些都是回调 1

 public void onResponse(Call<RssFeed> call, Response<RssFeed> response) {
            Log.d(TAG, "onResponse: feed: " + response.body().toString());

            List<Item> mItems = response.body().getmChannel().getItems();

            Log.d(TAG, "onResponse: Server Response: " + response.toString());

2

 @Override
        public void onResponse(Call<RssFeed> call, Response<RssFeed> response) {
            Log.d(TAG, "onResponse: feed: " + response.body().toString());

            List<Item> mItems = response.body().getmChannel().getItems();

            Log.d(TAG, "onResponse: Server Response: " + response.toString());

0 个答案:

没有答案