我想在Retrofit調用的WebService的成功回調中顯示一個新活動。 我很難找到有關如何使用Retrofit回調結果來啓動新活動的示例。 這是一個很好的方法嗎?我需要清理一些東西嗎?如何在改裝回調中調用意圖?
public void validate(View view) {
RetrofitWebServices.getInstance().webserviceMethod(params,new Callback<MyObject>() {
@Override
public void success(MyObject object, Response response) {
Intent barIntent = new Intent(FooActivity.this, BarActivity.class);
startActivity(barIntent);
}
@Override
public void failure(RetrofitError error) {
...
}
});
}
謝謝。我使用這種模式來處理所有的webservice調用。但是,它是正確的方式嗎?它總是必須是在android中的異步調用? – Labe 2014-09-04 15:28:24
由於Android強制您在單獨的線程中執行網絡請求,因此此機制將始終是異步的 - 顯式或隱式。使用Retrofit可以實現同步(使用返回值)和異步流(使用回調)。只要記住 - 在第一種情況下,你必須自己照顧線程。我不能保證這種回調方式是實現您的目標的最佳方式,但恐怕沒有絕對可靠和防泄漏的方法,可以讓您保持上下文參考。 – Viacheslav 2014-09-05 09:43:09