Я работаю над приложением, которому нужно выполнить запрос GET для обновления TextView на экране, сейчас я делаю это с помощью кнопки, но мне нужно постоянно обновлять текстовое представление. Каков наилучший способ или практика, чтобы сделать это? здесь код запроса, кнопка просто вызывает его и помещает строку ответа в TextView.
protected void getEquiposHTTP() {
//Método GET HTTP al servicio Cloudant IBM para las credenciales dadas
final OkHttpClient client = new OkHttpClient();
Uri.Builder builder = new Uri.Builder();
builder.scheme("https")
.authority("data")
.appendPath("data")
.appendPath("data")
.appendPath("data")
.appendPath("data")
.appendPath("data")
.appendQueryParameter("data", "data");
String myUrl = builder.build().toString();
byte[] encoding = Base64.encodeBase64(("data" + ":" + "data").getBytes());
String encodedString = new String(encoding);
final Request request = new Request.Builder()
.url(myUrl)
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "Basic " + encodedString)
.addHeader("cache-control", "no-cache")
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
String mMessage = e.getMessage().toString();
call.cancel();
Log.e(TAG, "Problem at HTTP connection and call.cancel() executed");
}
@Override
public void onResponse(Call call, Response response) throws IOException {
if (response.isSuccessful()) {
try {
addToListEquipos(response.body().string());
} catch (Exception e) {
Log.e(TAG, "Problem at response of HTTP conection, response.isSuccessful() = true then try{} fail");
}
}
}
});
}