0

実際、Androidアプリからアップロードファイルを取得してダウンロードしています。ただし、セキュリティ上の理由から、アップロードされたファイルのみをダウンロードできるようです。私の目標は、Googleクラウドで作成された特定のファイルをAndroidアプリと共有(編集)することですが、その方法がわかりません。実際、クラウドで作成されたファイルを取得しようとすると、downloadurlフィールドは常にnullに設定されます。もちろん、私はGoogleドライブのユーザーセッションとGoogleAPIの署名済みAndroidアプリに同じアカウントを使用しています。Googleドライブクラウドのファイル権限を変更しようとしましたが、成功しませんでした。いくつかの提案をお願いします...

try {

                HttpClient client = new DefaultHttpClient();
                HttpGet get = new HttpGet(gFile.getDownloadUrl());
                get.setHeader("Authorization", "Bearer " + token);
                HttpResponse response = client.execute(get);

                InputStream inputStream = response.getEntity().getContent();
                jFolder.mkdirs();
                java.io.File jFile = new java.io.File(jFolder.getAbsolutePath() + "/" + gFile.getOriginalFilename()); // getGFileName() is my own method... it just grabs originalFilename if it exists or title if it doesn't.
                FileOutputStream fileStream = new FileOutputStream(jFile);
                byte buffer[] = new byte[1024];
                int length;
                while ((length=inputStream.read(buffer))>0) {
                    fileStream.write(buffer, 0, length);
                }
                fileStream.close();
                inputStream.close();
                return jFile;
            } catch (IOException e) {        
                // Handle IOExceptions here...
                return null;
            }
4

1 に答える 1

0

DownloadUrlは、Google以外のドキュメントファイルに対してのみ入力されます。ダウンロードしようとしているファイルがGoogleドキュメントの場合は、exportLinksのいずれかを使用する必要があります

于 2012-09-28T11:50:01.770 に答える