サーバー構築不要!スマートフォンアプリ向けの新クラウド

トップ >ドキュメント >イントロダクション(Swift):クイックスタート

イントロダクション(Swift)

クイックスタート

クイックスタートについて

このページでは、mobile backendをSwiftアプリと連携させる手順を紹介します

アプリの新規作成

管理画面

  • ニフクラ mobile backendにログインします
  • 管理画面が表示されたら、「アプリの新規作成」を行います
    • すでに別のアプリを作成済みの場合は、ヘッダーの「+新しいアプリ」をクリックします

新規アプリケーション作成

  • 「アプリ名」を入力し「新規作成」をクリックすると、APIキー(アプリケーションキーとクライアントキー)が発行されます

APIキー発行

  • APIキーは後ほどXcodeアプリで使います

Xcode

  • Xcodeでプロジェクトを作成します(既存のプロジェクトを利用する場合はこの作業は不要です)
  • 新規プロジェクト作成の際にSingle View Appを選択してください

Xcodeプロジェクト

  • プロジェクトは一度閉じておきます

SDKをインストールする

Carthageを利用する方法
  • Carthageは現在対応していません
CocoaPodsを利用する方法

(1)CocoaPodsをインストールする

  • CocoaPodsがすでにインストールされている方はこちらの作業は不要です

ターミナル

1.cocoaPodsをインストールを行います

$ sudo gem install cocoapods

2.cocoaPodsのセットアップを行います

$ pod setup

3.バージョン情報が表示されればインストール完了です

$ pod --version

(2)SDKライブラリのインストール
ターミナル
1.Xcodeプロジェクト内にある「プロジェクト名.xcodeproj」と同じディレクトリに移動します

$ cd 'プロジェクトパス'

2.Podfile(インストールするライブラリを指定するファイル)を作成します

$ pod init


3.プロジェクトのディレクトリ内に作成されたPodfileを開いて、以下の内容に書き換えてください

Podfile

# Uncomment this line to define a global platform for your project
platform :ios, '10.0' #10.0以上指定してください

target "YOUR_APP_TARGET" do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!
  pod 'NCMB', :git => 'https://github.com/NIFCLOUD-mbaas/ncmb_swift.git'
end

※「YOUR_APP_TARGET」の部分は、作成しているXcodeプロジェクトのプロジェクト名に書き換えてください

4.編集したPodfileを保存します

5.Podfileに書いたSDKをインストールします

ターミナル

$ pod install

※基本は上記コマンドでインストールを行いますが、短時間でインストールが必要な場合は、$ pod install --no-repo-updateが利用可能です

6.「プロジェクト名.xcworkspace」が作成されます

  • 注意:元々ある「プロジェクト名.xcodeproj」からXcodeアプリを開いても、SDKが読み込まれませんので、必ず「プロジェクト名.xcworkspace」から開いて編集を行ってください

 参考:SDKのアップデートについて

ターミナル

* コマンドSDKのアップデートが可能です

$ pod update

  • Cocoapodsを利用して導入したSDKの場合は上記コマンドの実行だけで更新可能です。

    • ローカルに置いたSDKのリポジトリを指定していた場合は以下の方法で更新できます
# Uncomment this line to define a global platform for your project
platform :ios, '10.0'

target "YOUR_APP_TARGET" do
#  以下のようにローカルのpathを指定していた場合はPodfileを変更する
#  pod 'NCMB', :path =>'your directory path'
#
#  変更後のpod指定方法
   pod 'NCMB', :git => 'https://github.com/NIFCLOUD-mbaas/ncmb_swift.git'
end

※「YOUR_APP_TARGET」の部分は、作成しているXcodeプロジェクトのプロジェクト名に書き換えてください

  • 上記のようにPodfileを編集(GitHubリポジトリを指定)して、下記コマンドを実行します
$ pod update

SDKをダウンロードして利用する方法

(1)SDKをダウンロードする

  • GitHubのSwift SDKページで「Clone or download ▼」>「Download ZIP」をクリックし、masterブランチのzipファイルをダウンロードします
  • ダウンロードしたzipファイルを解凍してフォルダを開きます
    • フォルダの中には「NCMB」というフォルダがあります。その中のファイルがSDKです。

(2)SDKをインストールする

Xcode

  • Xcodeプロジェクトを開きます
  • (1)で確認した「NCMB」フォルダをXcodeプロジェクトのターゲットグループ直下(AppDelegateクラスと同じ階層)にコピーします
  • フォルダをコピーするときに、Xcodeでポップアップが開くので、次の様に設定します
    • 「Destination」の項目で「Copy items if needed」にチェックを入れる
    • 「Added folders」の項目で「Create groups」を選択する
    • 「Add to targets」の項目でSDKを利用するターゲットを選択する

 参考:SDKのアップデートについて

  • 最新のSDKをダウンロードし、同様の操作で「NCMB」フォルダを置き換えることで、SDKのアップデートが可能です

 参考:ARCが無効な環境でSDKを利用する場合

  • ARCが無効な環境でSDKを利用する場合は、以下の手順でSDKのみARCを有効にする設定を行います
    • ターゲットの一覧から対象のターゲットを選択
    • 「Build Phases」のタブにある「Compile Sources」を開く
    • ニフクラ mobile backendのiOS SDKを構成する全ファイルを選択
    • ダブルクリックして「Compiler Flags」に「-fobjc-arc」を設定

SDKの読み込み

Xcode

  • AppDelegate.swiftの冒頭に次のコードを追記して、インストールしたSDKを読み込みます
    • 追記するコードは、SDKのインストール方法によって異なります
    • SDKをダウンロードして利用する方法では、こちらは不要です
// CocoaPodsを利用する方法
import NCMB

APIキーの設定とSDKの初期化

  • コードを書いていく前に、必ずmBaaSで発行されたAPIキーの設定とSDKの初期化を行う必要があります

  • AppDelegate.swiftdidFinishLaunchingWithOptions launchOptions:メソッドに次のコードを書きます

// APIキーの設定とSDK初期化
NCMB.initialize(applicationKey: "YOUR_APPLICATION_KEY", clientKey: "YOUR_CLIENT_KEY");

  • didFinishLaunchingWithOptions launchOptions:メソッド
    didFinishLaunchingWithOptions

  • 上の「YOUR_APPLICATION_KEY」と「YOUR_CLIENT_KEY」は、mBaaSの管理画面で「アプリの新規作成」を行ったときに発行されたAPIキーに置き換えます

    • アプリ作成時のAPIキー発行画面を閉じてしまった場合は、「アプリ設定」>「基本」で確認できます。
    • 「コピー」ボタンを使用してコピーしてください。
      管理画面
      APIキー確認
  • これで連携作業は完了です!

  • サンプルコードを書いて実際にmBaaSを使ってみましょう

サンプルコードの実装

Xcode

  • AppDelegate.swiftapplication(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions:メソッド内に書いた処理は、アプリの起動時に実行されます
  • APIキーの設定とSDK初期化コードの下にサンプルコードを書くと、すぐに動作確認が可能です
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    // APIキーの設定とSDK初期化
    NCMB.initialize(applicationKey: "YOUR_APPLICATION_KEY", clientKey: "YOUR_CLIENT_KEY");
    // ↓ ここにサンプルコードを実装 ↓


    return true
}

サンプルコード(データストア)
  • 次のコードはmBaaSのデータストアに保存先の「TestClass」というクラスを作成し、「message」というフィールドへ「Hello, NCMB!」というメッセージ(文字列)を保存するものです
// クラスのNCMBObjectを作成
let object : NCMBObject = NCMBObject(className: "TestClass")
// オブジェクトに値を設定
object["message"] = "Hello, NCMB!"
// データストアへの登録
object.saveInBackground(callback: { result in
    switch result {

    case .success:
        // 保存に成功した場合の処理
        print("保存に成功しました")
    case let .failure(error):
        // 保存に失敗した場合の処理
        print("保存に失敗しました: \(error)")
    }
})

アプリを実行してmBaaSの管理画面を確認する
  • アプリを実機またはシミュレーターで実行します

管理画面

  • アプリが起動されたら、mobile backendの管理画面で「データストア」から、データが保存されていることを確認できます

DBサンプル結果

お探しの内容が見つからなかった場合はユーザーコミュニティ もご活用ください。(回答保証はいたしかねます)
なお、 Expertプラン以上のお客様はテクニカルサポートにてご質問を承らせて頂きます。

推奨画面サイズ1024×768px以上

ページの先頭へ