ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

iOS SDK 2.0がframework形式に対応しました

iOS SDKはこれまでと異なり、CocoaPodsでインストールが可能になっています。とはいえ、CocoaPods非対応のプロジェクトであったり、cocos2dでニフティクラウド mobile backendを使おうと思った場合には従来通りのFrameworkファイルの方が使い勝手が良いでしょう。

ということで、iOS SDKのリポジトリでは、リリース時にFrameworkファイルを配布するようになっています。今回はこちらを使ったニフティクラウド mobile backend利用法を解説します。詳細はクイックスタート(iOS)のSDKをframework形式で利用するをご覧ください。

必要なもの

Frameworkファイルをダウンロードする

GitHubのiOS SDKリポジトリにあるreleasesをクリックします。

リリース一覧の一番上(執筆時点ではv2.0.2)にある緑色のボタン(NCMB.2.0.2.zip)をクリックしてダウンロード、解凍します。

Xcodeで新規プロジェクトを作成する

次にXcodeで新規プロジェクトの立ち上げ、または既存のプロジェクトを開きます。そしてBuild Phasesをクリックし、さらにLink Binary With Librariesの+をクリックします。

そうするとFrameworkまたはライブラリの選択画面が出ますので、Add Otherを選択します。

出てきたダイアログでNCMB.frameworkを選択します。

これでFrameworkのインポートが終わり、利用準備が整いました。

ニフティクラウド mobile backendを使ってみる

実際にニフティクラウド mobile backendを使う場合は、使うソースファイルにて、

#import <NCMB/NCMB.h>

と記述します。

そして例えばデータストアを使う場合には次のように記述します。

[NCMB setApplicationKey:@"APPLICATION_KEY" clientKey:@"CLIENT_KEY"];

NCMBQuery *query = [NCMBQuery queryWithClassName:@"TestClass"];
[query whereKey:@"message" equalTo:@"test"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
  if (error == nil) {
    if ([objects count] > 0) {
      NSLog(@"[FIND] %@", [[objects objectAtIndex:0] objectForKey:@"message"]);
    } else {
      NSError *saveError = nil;
      NCMBObject *obj = [NCMBObject objectWithClassName:@"TestClass"];
      [obj setObject:@"Hello, NCMB!" forKey:@"message"];
      [obj save:&saveError];
      if (saveError == nil) {
        NSLog(@"[SAVE] Done");
      } else {
        NSLog(@"[SAVE-ERROR] %@", saveError);
      }
    }
  } else {
    NSLog(@"[ERROR] %@", error);
  }
}];

APPLICATION_KEYとCLIENT_KEYは管理画面から取得できるものと差し替えてください。

これで実行して保存処理が完了すると [SAVE] Done とログが出ます。


いかがでしょうか。1.0系の場合、JSONKitなどの取り込みも必要でしたが2.0系からはそのような手間もなくFrameworkファイルの取り込みだけで完了します。より手軽になったiOS SDKをご利用ください!

f:id:mbaasblog:20180927104348p:plain