プログラムを書こう!

実務や自作アプリ開発で習得した役に立つソフトウェア技術情報を発信するブログ

SwiftでGoogleDrive APIを使用する準備を行う。

この記事は2018年07月21日に投稿しました。

f:id:paveway:20190914064630j:plain

目次

  1. はじめに
  2. 前提
  3. 準備する手順
    3-1. Xcodeプロジェクトを作成する
    3-2. Google Cloud Platformプロジェクトを作成する
    3-3. ライブラリをインストールする
    3-4. Xcodeプロジェクトを設定する
  4. おわりに

1. はじめに

こんにちは、iOSのエディタアプリPWEditorの開発者です。
今回から数回に分けて、SwiftでGoogleDrive APIを使ってさまざまなファイル操作をしてみたいと思います。

今回はSwiftでGoogleDrive APIを使用する準備を行います。

絶対に挫折しないiPhoneアプリ開発「超」入門 増補第6版【Swift 4 & iOS 11】完全対応 (Informatics&IDEA)

絶対に挫折しないiPhoneアプリ開発「超」入門 増補第6版【Swift 4 & iOS 11】完全対応 (Informatics&IDEA)

目次へ

2. 前提

GoogleDrive APIを使用するには、Googleアカウントが必要となります。
Googleアカウントをお持ちでない方は、Googleアカウントを作成しておいてください。

目次へ

3. 準備する手順

3-1. Xcodeプロジェクトを作成する

この後の3-2. Google Cloud Platformプロジェクトを作成するで、iOSアプリのバンドルIDが必要となります。
そのため先にXcodeプロジェクトを作成します。
Xcodeのウィザードに従って、プロジェクトを作成してください。

念のためこの時点でビルド、起動するところまで確認しておくと、あとでトラブルがあった時に原因を切り分けやすくなります。

目次へ

3-2. Google Cloud Platformプロジェクトを作成する

iOSアプリからGoogleDrive APIを使用するため、Google Cloud Platformでプロジェクトを作成します。
以下がGoogle Cloud Platformでプロジェクトを作成する手順です。
ここでGoogleアカウントが必要となります。

  1. Google Cloud PlatformGoogleアカウントでサインインします。
  2. Google Cloud Platform画面が開くので、画面上部のプロジェクト選択コンボボックスを選択します。
  3. プロジェクトの選択ダイアログが開くので、画面右上の新しいプロジェクトをクリックします。
  4. 新しいプロジェクト画面が開くので、任意のプロジェクト名を入力し、作成ボタンを押下します。
    このプロジェクト名はGoogle Cloud Platformでのプロジェクト名のため、Xcodeで作成したプロジェクト名に合わせる必要はありません。
    ただ同じにしておいた方がわかりやすいと思います。
  5. 作成したプロジェクトのダッシュボード画面が開くので、画面左上のナビゲーションメニューAPIとサービスを選択します。
  6. APIとサービスダッシュボード画面が開くので、画面上部のAPIとサービスの有効化を選択します。
  7. 新しいAPIライブラリへようこそ画面が開くので、Google Drive APIを選択します。
  8. Goolge Drive API画面が開くので、有効にするボタンを押下します。
  9. APIとサービス画面に戻り、左側メニューの認証情報を選択します。
  10. 認証情報画面が開くので、OAuth同意画面タブを選択し、ユーザに表示するサービス名に任意のサービス名を入力し、保存ボタンを押下します。
  11. 認証情報画面に戻るので、認証情報タブを選択し、認証情報を作成コンボボックスでOAuthクライアントIDを選択します。
  12. OAuthクライアントIDを作成画面が開くので、アプリケーションの種類iOSを選択します。
    入力項目が表示されるので、以下の入力項目を入力し作成ボタンを押下します。

    • 名前 : 任意の名前(Xcodeプロジェクト名と合わせた方がわかりやすいと思います)
    • バンドルID : 3-1. Xcodeプロジェクトを作成するで作成したXcodeプロジェクトのバンドルID
    • App Store ID : 入力しない
    • チームID : 入力しない
  13. OAuthクライアントダイアログが開き、クライアントIDが表示されます。
    このクライアントIDはのちほど必要になるため、コピーしておきます。

これでGoogle Cloud Platformのプロジェクトの作成は終わりになります。

目次へ

3-3. ライブラリをインストールする

iOSアプリからGoogleDrive APIにアクセスするため、Google APIs Client Library for Objective-C for RESTライブラリを使用します。
以下はライブラリをインストールする手順になります。
この手順は、GoogleのドキュメントG Suite APIs for iOSを参考にしました。

ただしこのドキュメントは、PWEditorGoogleDrive APIを実装した当時と内容が異なっています。
(たぶんドキュメントのタイトルも違った気がします)

特に以前の認証方式はドキュメントにあるGoogleSignInではなく、GTMAppAuthを使用するようになっていました。
そのため下記のPodfileは、以前のドキュメントを参考にした内容になっておりますので注意してください。

  1. Podfileを用意します。 Podfileの"<プロジェクト名>"の部分は、3-1. Xcodeプロジェクトを作成するで作成したXcodeのプロジェクト名に置き換えてください。
platform :ios, '8.0'
target '<アプリ名>' do
    ' GoogleDriveを使用するので"/Drive"を指定します。
    pod 'GoogleAPIClientForREST/Drive', '~> 1.2.1'
        
    ' ドキュメントとは異なり"GTMAppAuth"を使用します。
    pod 'GTMAppAuth"
end
  1. ターミナルでXcodeプロジェクトのディレクトリを開き、次のコマンドを実行します。
pod install

目次へ

3-4. Xcodeプロジェクトを設定する

iOSアプリ側でGoogleDrive APIと紐づける設定を行います。

  1. 3-1. Xcodeプロジェクトを作成するで作成したXcodeプロジェクトを開きます。
  2. 左側ペインでShow the Project navigatorを選択し、"<プロジェクト名>"を選択します。
  3. 画面中央で、Infoタブを選択します。
  4. URL Typesを展開し、+ボタンを押下します。
  5. 新しい項目が追加されるので、URL Schemesに"com.googleusercontent.apps.<クライアントID>"を入力します。
    <クライアントID>には3-2. Google Cloud Platformプロジェクトを作成するでコピーしたクライアントIDを指定します。

目次へ

4. おわりに

これでアプリからGoogleDrive APIを使用する準備ができました。

GoogleDrive APIのドキュメントは、情報があちこちに点在していてわかりにくいです。
またちょこちょこ変更が入るので、その度に対応しないといけないので面倒です。

【WebCampPRO】

詳細!Swift 4 iPhoneアプリ開発 入門ノート Swift 4+Xcode 9対応

詳細!Swift 4 iPhoneアプリ開発 入門ノート Swift 4+Xcode 9対応

紹介している一部の記事のコードはGitlabで公開しています。
興味のある方は覗いてみてください。

目次へ


私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。
弊社製品のハイブリッドOS Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。
私自身はiOSモバイルアプリウィンドウズアプリを得意としております。
ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。

また一緒に働きたい技術者の方も随時募集中です。
興味がありましたらご連絡ください。

EMAIL : info-nr@newral.co.jp / m-futamata@newral.co.jp
TEL : 042-523-3663
FAX : 042-540-1688

目次へ