プログラムを書こう!

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

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

この記事は2018年10月02日に投稿しました。
この記事は2018年10月03日に更新しました。

目次

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

1. はじめに

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

紹介する手順は、PWEditorに実装した内容になります。

目次へ

2. 前提

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

目次へ

3. 準備する手順

3-1. マイアプリを登録する

iOSアプリからBox APIを使用するため、Box Developer Portalコンソールからマイアプリを登録します。

以下がBox Developer Portalマイアプリを登録する手順です。
ここでBoxアカウントが必要となります。

  1. Box Developer Portalをブラウザで開きます。
    画面右上か画面中央にあるConsoleボタンを押下します。
    サインイン画面が開くので、Boxアカウントでサインインします。
  2. コンソール画面が開くので、画面左側のマイアプリを選択します。
    画面右上か画面中央にあるアプリの新規作成ボタンを押下します。
  3. 新しいBOXアプリを作成する画面が開きます。
    カスタムアプリを選択し、次へボタンを押下します。
  4. 認証方法画面が開くので、標準OAuth 2.0(ユーザ認証)を選択し、次へボタンを押下します。
  5. アプリの名前は何にしますか?画面が開くので、任意のアプリ名を入力し、アプリの作成ボタンを押下します。
    恐らくアプリ名は全世界でユニークな名前である必要があります。
    またiOSアプリ名と合わせる必要は無いようですが、わかりやすいようにiOSアプリ名と合わせておいた方が良いと思います。
  6. アプリ作成結果画面が開くので、アプリの表示ボタンを押下します。
  7. アプリの構成画面が開きます。
    • OAuth 2.0資格情報クライアントIDクライアント機密コードをコピーしておきます。
      後日紹介する初期化処理で必要になります。
    • OAuth 2.0リダイレクトURIリダイレクトURIに以下の内容を入力します。

      boxsdk-<クライアントID>://boxsdkoauth2redirect

    • アプリケーションスコープBoxの格納されているすべてのファイルとフォルダの読み取りと書き込みをチェックします。

    変更後、画面右上の変更を保存ボタンを押下し、変更内容を保存します。

目次へ

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

Xcodeを開き、Xcodeプロジェクトを作成してください。

目次へ

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

iOSアプリからBox APIにアクセスするため、Box iOS SDKライブラリを使用します。
Box iOS SDKライブラリはCarthageでインストールします。
そのためCarthageを利用できる環境にしておいてください。

以前はCocoaPodsでのインストールもサポートされていましたが、現在はサポートされていないようです。
試しにCocoaPodsでインストールしてみましたが、古いバージョンしかインストールされないようです。
そのためCarthageでインストールするようにしてください。

以下はライブラリをインストールする手順になります。
この手順は、Box iOS SDKライブラリのドキュメントQuickStartStep1,2を参考にしました。

  1. Xcodeプロジェクトのディレクトリに、以下のCartfileファイルを用意します。

    github "box/box-ios-sdk"

  2. ターミナルでXcodeプロジェクトのディレクトリを開き、次のコマンドを実行します。

    carthage update --platform iOS

  3. XcodeXcodeプロジェクトを開きます。
    左ペインのProject navigator<プロジェクト名>を選択します。

  4. 画面中央上部のGeneralタブを選択します。
  5. Generalタブ画面Linked Frameworks and Libraries+ボタンを押下します。
  6. Choose frameworks and libraries to add:ダイアログが開くので、Add other...ボタンを押下します。
  7. ファイル選択ダイアログが開くので、<プロジェクト名>/Carthage/Build/iOS/BoxContentSDK.frameworkを選択し、Openボタンを押下します。
  8. Linked Frameworks and LibrariesBoxContentSDK.frameworkが追加されたことを確認してください。
  9. 画面中央上部のBuild Phasesタブを選択します。
  10. Run Scriptを開きます。

    • Shell/bin/shを入力し、その下の入力欄に以下のコマンドを入力してください。 /usr/local/bin/carthage copy-frameworks

    • Input Files+ボタンを押下し、以下を入力します。 $(SRCROOT)/Carthage/Build/iOS/BoxContentSDK.framework

目次へ

4. おわりに

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

以前からBoxに対応しようとしていましたが、リダイレクトURIの設定方法がわからず対応できずにいました。
先日久しぶりにBox APIのドキュメントを見たところ、リダイレクトURIの設定方法がわかり、ようやく対応することができました。

エンジニアによるエンジニアのためのサイト始まる!!【teratail】

たった2日でマスターできる iOSアプリ開発集中講座 Xcode 9/Swift 4対応

たった2日でマスターできる iOSアプリ開発集中講座 Xcode 9/Swift 4対応

目次へ