プログラムを書こう!

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

SwiftのOneDrive APIで初期化処理を行う。

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

f:id:paveway:20190914064630j:plain

目次

  1. はじめに
  2. 初期化処理
  3. おわりに

本気ではじめるiPhoneアプリ作り Xcode 9.x+Swift 4.x対応 (「ヤフー黒帯」シリーズ)

本気ではじめるiPhoneアプリ作り Xcode 9.x+Swift 4.x対応 (「ヤフー黒帯」シリーズ)

1. はじめに

こんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。

今回以降説明する内容は、Get started with the OneDrive SDK for iOS2.2 Setting your application Id and scopesを参考にしました。
必要に応じてドキュメントを参照してください。

Ond Drive APIの初期化処理は、AppDelegateのapplication(:didFinishLaunchingWithOptions:)メソッドで行います。
PWEditorでは、application(
:didFinishLaunchingWithOptions:)メソッドで、他にもいろいろ処理を行っています。
そのためPWEditorでは、OneDrive APIの初期化処理を行うinitOneDriveメソッドを用意して、それを呼び出しています。

初期化処理の内容ですが、

  • アプリを登録した時に取得したアプリケーションID
  • アプリがOneDriveにアクセスするスコープ

をsetMicrosoftAccountAppIdメソッドで登録するだけです。 スコープについては、こちらのドキュメント"認証のスコープ"と”スコープとアクセス許可に記載があります。
ただし"スコープとアクセス許可は昔は参照できたのですが、2018年06月26日現在参照できないようです。
そのためキャッシュのページをリンクしておきます。
PWEditorでは、"wl.offline_access", "wl.signin", "onedrive.readwrite"を指定しています。

なおPWEditorではセキュリティを考慮して、アプリケーションIDはコードに直接埋め込むのではなく、別にコンフィギュレーションファイルを用意して、そこから読み込むようにしています。

目次へ

2. 初期化処理

import OneDriveSDK

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // 他の処理
        // …
        // OneDrive APIの初期化します。
        initOneDrive()
        // …
        // 他の処理
    }
    
    /**
     OneDrive APIを初期化します。
     */
    func initOneDrive() {
        // アプリを登録した時に取得したアプリケーションIDを指定します。
        let oneDriveClientId = "<アプリケーションID>"
    
        // アプリがアクセスするスコープを指定します。
        let scopes = [
            "wl.signin",
            "wl.offline_access",
            "onedrive.readwrite"
        ]
        
        // アプリケーションIDとスコープを登録します。
        ODClient.setMicrosoftAccountAppId(oneDriveClientId, scopes: scopes)
    }
}

目次へ

3. おわりに

OneDrive SDK for iOSのドキュメントは、チュートリアル的なドキュメントはありますが、APIリファレンスが見当たりませんでした。
またOneDrive APIのドキュメントですが、公式にはREST APIのドキュメントしかないようです。

とりあえず稼ぎたいなら、ITエンジニア【IT派遣テクノウェイブ】

[改訂新版]Swift実践入門 ── 直感的な文法と安全性を兼ね備えた言語 (WEB+DB PRESS plus)

[改訂新版]Swift実践入門 ── 直感的な文法と安全性を兼ね備えた言語 (WEB+DB PRESS plus)

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

目次へ


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

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

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

目次へ