3
public abstract class RetrofitBaseCallBack<T> implements Callback<T> {
@Override
public void onResponse(Call<T> call, Response<T> response) {
int responseCode = response.code();
if (responseCode == Constants.ServerResponse.Code.STATUS_OK
|| responseCode == Constants.ServerResponse.Code.STATUS_CREATED_SUCCESS
|| responseCode == Constants.ServerResponse.Code.STATUS_IN_PROGRESS
|| responseCode == Constants.ServerResponse.Code.STATUS_NO_CONTENT
|| responseCode == Constants.ServerResponse.Code.STATUS_ACCEPTED) {
// i want to navigate to onResponseSuccess when "success":true
onResponseSuccess(call, response);
} else {
//i want to navigate to onResponseFailure when "success":false
onErrorResponse(call, response);
}
}
}
@Override
public void onFailure(Call<T> call, Throwable t) {
onRetrofitBaseCallBackFailure(call, t);
}
public abstract void onResponseSuccess(Call<T> call, Response<T> response);
public abstract void onResponseFailure(Call<T> call, Response response, String message);
public abstract void onRetrofitBaseCallBackFailure(Call<T> call, Throwable t);
}
我已經通過擴展改造回調來創建類。我想解析字符串的響應。在我的例子中,每個響應都會得到這種類型的JSON對象。在成功響應的情況下:如何將改造響應正文轉換爲JsonObject
{
"success": true,
"abc": {
"a": 0.15,
"b": "Better Exchange Rate",
}
}
在失敗響應的情況下
{
"success": false,
"abc": {
"a": 0.15,
"b": "Better Exchange Rate",
}
}
我怎麼能轉換響應主體爲JSONObject的,這樣我可以檢查現場「成功」:和瀏覽相應的方法即onResponseSuccess(呼叫呼叫,響應響應)成功的情況下,onResponseFailure(呼叫呼叫,響應響應,字符串消息)在發生故障的情況下