鷲尾です。
このブログ記事、一度消えてしまって倒れそうになりました。
こんなことあるんですね・・・
さ、気を取り直してもう一度書きましょうか!
突然ですが、みなさんGoogleDrive使ってますか?
Google Driveが有名になる前は、Dropboxを使っていたという方も結構多いのではないでしょうか(Dropboxももちろん現役バリバリです!)
私もGoogle Driveは日々の業務で使いますし、私の周りではとりあえずドライブにあげておいたり、スマホからもファイルを確認したいといった場合によく使われてるようです。
そんなGoogle Driveですが、実は様々な言語でGoogle Drive内のファイルを操作できるAPIがGoogleから提供されています。
私もJava用のAPIを使って試してみようと思ったのですが、何箇所かひっかかかってしまった箇所がありました。
そこで今回は、Google Drive上にファイルをアップロードすることを目標に、APIの導入から実行確認までを整理していきたいと思います。
それでは、以下の流れで順に説明していきたいと思います。
1.目標
2.使用するAPI
3.Drive REST APIを実行するための準備
4.開発環境での準備
5.動作確認
1.目標
今回は、ローカル環境にある"LocalDocument.txt"というテキストファイルを"DriveDocument : 作成日時"という名前でGoogle Drive上にアップロードすることを目標とします。
2.使用するAPI
ここまでAPIの正式名称が出てきていませんでしたね。
今回使用するAPIの名称は、「Drive REST API」というものです。このDrive REST APIを使用すると、Google Drive上のファイルの一覧を取得したり、ファイルをアップロードしたりといったことが出来ます。Drive REST APIは様々な言語に対応していますが、今回はJavaを使って開発を行います。他の言語を確認したい方は、こちらから確認してください。
https://developers.google.com/drive/web/about-sdk
https://developers.google.com/drive/web/manage-downloads
3.Drive REST API実行をするための事前準備
Drive REST APIIを使用するためには、事前にいくつかの準備が必要です。まずは、APIを使用するための準備を行います。
■必要なもの
・Google アカウント
・開発環境
・プログラム実行用の外部Jarファイルのダウンロード
・Drive REST APIの使用許可設定
・認証情報
3-1.Googleアカウント
当然ですが、Googleアカウントが必要です。Google Driveを使用している方は既にお持ちだと思いますが、まだGoogleアカウントを作成していない場合は、作成しておきます。
3-2.開発環境
この記事では、Eclipse 4.4を使用しています。他のバージョンでも動作するかとは思いますが、開発環境の違いで動作しない場合もあるかと思いますので、その際はEclipse 4.4でお試しください。
なお、Javaのバージョンは1.7以上である必要がありますので、ご自身の環境のJavaのバージョンを事前に確認しておいてください。
3-3.プログラム実行用の外部Jarファイルのダウンロード
Drive REST APIを使用するためのJarファイルが必要です。事前にリンク①から「google-api-java-client.zip」をダウンロードし、解凍しておいてください。
なお、「google-api-java-client.zip」内には含まれていない、Jarファイル(google-api-services-drive-v2-rev174-1.20.0.jar)がありますので、そちらはリンク②からダウンロードしてください。
リンク①:https://github.com/google/google-api-java-client
リンク②:http://mvnrepository.com/artifact/com.google.apis/google-api-services-drive/v2-rev174-1.20.0
3-4.Drive REST APIの使用許可設定
さて、ここまでダウンロードしたりアカウントを作成したりという作業が多かったと思いますが、
ここからは「Google Developers Console」という、Google が開発者向けに提供しているサイトから、操作を行います。
Google Developers Consoleでは、認証情報の発行や削除、APIの使用許可設定などを管理します。AWSやAzureを触ったことがある方は、なんとなくああいった管理画面と近いイメージです。
Google Developers Consoleには、ここからアクセスします。
https://console.developers.google.com
初めてアクセスする方は、プロジェクトを作成する必要があります。お好きな名前でプロジェクトを作成してください。ここでは例として、"PYPROTEST"というプロジェクトを作成しています。
プロジェクトを作成すると、以下の様な画面になると思います。
画面ではDrive APIが既に有効になっているのでこのようになっていますが、有効になっていない場合は"APIを有効にする"をクリックしてください。
これでDrive REST APIの使用許可設定が完了しました。
続いて、認証情報の発行と取得です。
3-5.認証情報
認証情報は、「認証情報」画面から発行します。
初めに、APIの使用設定と同じく画面左メニューから「APIと認証」→「認証情報」を開きます。
そうすると、以下の様な画面になるかと思います。ここで「新しいクライアントIDを作成」を選択すると、アプリケーションの種類を聞いてきますので、"インストールされているアプリケーション"を選択します。インストールされているアプリケーションの種類は"その他"に設定します。
↓
「クライアントIDを作成」を選択すると、新しくクライアントIDが作成されます。
(同じ画像に見えるのは気のせいです。)
ここで表示されている、"クライアントID"、"クライアントシークレット"、"リダイレクトURI"は、後ほど使用しますので、メモ帳などにメモしておくと楽です。
これで、Drive REST APIの実行に必要な準備が完了しました。