[英]Handling errors for drive rest API in Android Java Application
我已经成功实现了驱动器 Rest API,一切似乎都正常。 如果出现问题(连接丢失等),我感到困惑的是如何处理错误。 我假设这些错误很常见,那么我是否可以将标准响应添加到我的 addOnFailureListener() 中,或者我是否为所有可能的错误编写代码。 处理 REST 错误的最佳实践是什么。
主要活动:
public void doRestore(int position){
progressDialog = ProgressDialog.show(this, null, getString(R.string.backup_restore_message), false, false);
mDriveServiceHelper.restoreFile(data.get(position).getId()).
addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
progressDialog.dismiss();
finish();
Intent i = new Intent(BackupNew.this, Splash.class);
startActivity(i);
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
progressDialog.dismiss();
// What do I add here???
}
});
}
助手 class:
public Task<Void> restoreFile(final String fileId) {
return Tasks.call(mExecutor, new Callable<Void>() {
@Override
public Void call() throws Exception {
InputStream is = mDriveService.files().get(fileId).executeMediaAsInputStream();
FileOutputStream myOutput = new FileOutputStream(context.getDatabasePath("appData"));
byte[] buffer = new byte[1024];
int length;
while ((length = is.read(buffer)) > 0) {
myOutput.write(buffer, 0, length);
}
myOutput.flush();
myOutput.close();
is.close();
return null;
}
});
}
您可以打印堆栈跟踪消息以进行调试。 似乎 api 没有返回任何类型的消息,但如您所知,如果它失败了,那么您可以显示您自己的错误消息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.