我正在修改一个应用程序,并想知道是否有人可以指出我正确的方向。基本上,我希望应用程序轮询URL并在json响应中,如果值为true,则继续。
目前的代码有:
return prepareForUpgrade() &&
uploadImage(firmware) &&
checkUpgradeStatus() &&
rebootDevice();
private boolean prepareForUpgrade() {
Timber.i("Preparing...");
try {
Response<ResponseBody> prepare = DeviceRestApi.prepareFirmwareUpgrade(
Constants.Device.DEFAULT_USERNAME,
Constants.Device.DEFAULT_PASSWORD,
DeviceRestApi.COMMAND_PREPARE
).execute();
boolean result = prepare.isSuccessful();
Timber.i("Result: %s", result);
return result;
} catch (IOException e) {
Timber.e(e, "Preparation failed");
return false;
}
}
基本上,如果网络请求成功,该过程将继续,但是我想用轮询URL的内容替换该行为,并且URL在成功时说明。
不需要确切的解决方案,只是想知道要走哪条路。我应该尝试一下服务吗?一个IntentService?还有别的吗?