Ich entwickle eine Datei hochladen Android-Anwendung. Mein Ziel ist es, die vom Benutzer ausgewählte Datei vom Dateimanager auf einen Remote-Server hochzuladen. Wenn jedoch eine Google Drive-Datei ausgewählt ist, schlägt das Hochladen von Dateien aufgrund eines leeren Pfads fehl. Kann mir jemand helfen ?Dateipfad ist leer für Google Drive-Dateien
Mein Code ist:
private void showFileChooser() {
Intent intent = new Intent();
intent.setType("*/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
startActivityForResult(Intent.createChooser(intent, "Choose File to Upload.."), PICK_FILE_REQUEST);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == Activity.RESULT_OK) {
if (requestCode == PICK_FILE_REQUEST) {
if (data == null) {
//no data present
return;
}
Uri selectedFileUri = data.getData();
selectedFilePath = FilePath.getPath(mActivity, selectedFileUri);
if (selectedFilePath != null && !selectedFilePath.equals("")) {
callUploadDocumentAPI();
} else {
Toast.makeText(mActivity, StringConstants.CANT_UPLOAD_TO_SERVER, Toast.LENGTH_SHORT).show();
}
}
}
Können Sie Ihren Code teilen? – notyou
Ich habe meinen Code in der Frage jetzt geschrieben – Abhi
'callUploadDocumentAPI()' nimm keine Argumente? Wie dauert es 'selectedFilePath'? – Kristopher