2017-05-10 8 views
1

Android搭載端末からGoogleドライブにファイルを送信する方法の簡単な例を教えてもらえますか?Android Googleドライブの送信/作成Fiile

コンテンツを含む新しいファイルを作成し、ドライブに送信します。

WWWサイト上のGoogleのコード例は、エラーを持っているか、古いAPIを使用して、新しいAPIが、例えば、アプリから..です

、Googleのサンプル:

File fileMetadata = new File(); 
fileMetadata.setTitle("photo.jpg"); 
java.io.File filePath = new java.io.File("files/photo.jpg"); 
FileContent mediaContent = new FileContent("image/jpeg", filePath); 
File file = driveService.files().insert(fileMetadata, mediaContent) 
     .setFields("id") 
     .execute(); 

しかしのsetTitle()および挿入などの方法() 存在しない?

マイコード:

HttpTransport transport = AndroidHttp.newCompatibleTransport(); 
      JsonFactory jsonFactory = JacksonFactory.getDefaultInstance(); 
      mService = new com.google.api.services.drive.Drive.Builder(
        transport, jsonFactory, credential) 
        .setApplicationName("Drive API Android Quickstart") 
        .build(); 

mService.files().create(new File().setName("TITLE").setMimeType("text/csv")).execute(); 

名TITLE、正しいMIMEタイプを持つこのファイル作成。

しかし、通常のjava.io.Fileを送信する方法、またはdrive.model.Fileのコンテンツを作成する方法はありますか?

答えて

1

あなたのスニペットは近いですが、それとGoogle's exampleいくつかの違いがあります。

File fileMetadata = new File(); 
fileMetadata.setName("config.json"); 
fileMetadata.setParents(Collections.singletonList("appDataFolder")); 
java.io.File filePath = new java.io.File("files/config.json"); 
FileContent mediaContent = new FileContent("application/json", filePath); 
File file = driveService.files().create(fileMetadata, mediaContent) 
    .setFields("id") 
    .execute(); 
  • 使用setName代わりに代わりappDataFolder
  • 使用driveService.files().createへのファイルの親を設定しsetTitle
  • のは、 driveService.files().insert
+0

新しいサンプルでgetGoogleApiClient()を使用していませんhttps://developers.google.com/drive/v3/web/quickstart/android または間違っていますか? 私は古いApiでgetGoogleApiClient()を覚えていますが、新しいものを使いたいと思っていました。 – Esperanz0

+0

あなたが正しいと思われ、APIが変更されました。私は私の答えを更新します。 –

+0

ほぼ。私の場合のfilePathは存在しない/作成されていません。 – Esperanz0

0

端末にGoogleドライブアプリをインストールします。まあ、あなたはすでに持っていると思います。

その後、Intent.ACTION_OPEN_DOCUMENTを使用して、ユーザーがドライブからファイルを選択してから読み書きできるようにします。

または、Intent.ACTION_CREATE_DOCUMENTを使用すると、ファイルをコピーできるドライブ上にファイル名を作成できます。

+0

ユーザーはこれと対話しません。たとえば、ユーザーはEditTextsに情報を書き込むだけです。この情報を入力してGoogleドライブにファイルとして送信する必要があります。 – Esperanz0

関連する問題