在Android中,Google Drive的onActivityResult()方法获取到的resultCode为0(RESULT_CANCELED)通常表示用户取消了操作。这种情况可能发生在用户选择文件时,但在选择文件之前取消了操作。
要解决这个问题,你可以采取以下步骤:
private static final int REQUEST_CODE_OPEN_DOCUMENT = 2;
private void openFileFromGoogleDrive() {
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
startActivityForResult(intent, REQUEST_CODE_OPEN_DOCUMENT);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_CODE_OPEN_DOCUMENT) {
if (resultCode == RESULT_OK) {
// 用户成功选择了文件
} else if (resultCode == RESULT_CANCELED) {
// 用户取消了操作
Toast.makeText(this, "用户取消了操作", Toast.LENGTH_SHORT).show();
}
}
}
通过以上步骤,你可以在用户取消操作时得到相应的通知,并执行适当的处理。