получить и отобразить ответ API из файла php и отобразить в android активности, используя модификацию в java - PullRequest
2 голосов
/ 24 февраля 2020

Я хочу отобразить ответ, полученный от кода PHP. Мой PHP код:

if ($query) {
    $response['message'] = "Saved";
    $response['error'] = false;
} else {
    $response['message'] = "Not Saved";
    $response['error'] = true;
}
echo json_encode($response);

Я хочу отобразить сообщение об ошибке и активность

Мой java код:

Call<String> call = updateInterface.updateData(getId, studentData[0], studentData[1], studentData[2]);
 call.enqueue(new Callback<String>() {
                    @Override
                    public void onResponse(Call<String> call, Response<String> response) {

                        editPrg.dismiss();

                        Toast.makeText(getApplicationContext(), "Record updated", Toast.LENGTH_LONG).show();

                    }

                    @Override
                    public void onFailure(Call<String> call, Throwable throwable) {

                        //hide dialog
                        editPrg.dismiss();

                        Toast.makeText(getApplicationContext(), "Error updating record", Toast.LENGTH_LONG).show();

                    }
                });

Я хочу отобразить PHP ответ в методе onResponse (). Пожалуйста, наведите меня, что мне делать?

1 Ответ

0 голосов
/ 24 февраля 2020

Вам необходимо создать класс ответа. Например, ServiceResponse. Ваш класс должен выглядеть следующим образом:

class ServiceResponse{

    private String message;
    private Boolean error;

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public Boolean getError() {
        return error;
    }

    public void setError(Boolean error) {
        this.error = error;
    }
}

Тогда ваш вызов Retrofit должен выглядеть следующим образом:

Call<ServiceResponse> call = updateInterface.updateData(getId, studentData[0], studentData[1], studentData[2]);

call.enqueue(new Callback<ServiceResponse>() {...}

С помощью этого кода вы сможете показать свой ответ в своей деятельности.

Таким образом, в резюме вы всегда должны создавать класс ответов в соответствии с тем, как реагирует ваш сервис.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...