こんにちは!新入社員の平出です!
皆さん、Swiftアプリ開発してますか!?ソーシャルアプリにとって、スマホから撮った写真をアップできるのは今や常識ですよね。しかし、サーバー周りの知識が必要になって実装が大変そうだなと思ってい ないでしょうか?そうした、メンドクサさを省いてくれるサービスがあるんです!それがニフティクラウドmobile backendというクラウドサービスです。今回はニフティクラウドmobile backendを使ってSwiftアプリで写真をクラウドに保存するサンプルアプリを作りました。こちらを用いて、チュートリアル形式で写真の保存が体験できます!ぜひ、試してみてください!
ニフティクラウドmobile backendとは?
ニフティクラウドmobile backendとは、mBaaS(mobile backend as a Service)と呼ばれるクラウドサービスで、スマートフォンアプリでよく利用される汎用的な機能をクラウドから提供するサービスです。
クラウド上に用意された機能をAPIで呼び出すだけで利用できるので、サーバー開発・運用不要でよりリッチなバックエンド機能をアプリに実装することができます。 ここからはニフティクラウドmobile backendではなくmBaaSと呼ばせていただきます。iOS SDKも用意しており、Swiftからも簡単に利用できます。
今回の概要
mBaaSの『ファイルストア機能』を利用して、「撮った写真をクラウドに保存する」内容をチュートリアル形式で実装していきたいと思います!
今回は以下3つの手順で進めて行きます。
- mBaaSでAPIキー取得
- サンプルプロジェクトにAPIキーを設定
- 動作確認
尚、動作確認は以下の環境で行っています。
- Mac OS X 10.10(Yosemite)
- Xcode ver. 7.2.1
- iPhone6 ver. 8.2
- このサンプルアプリは、端末のカメラを使用するため、実機ビルドが必要です。
それでは、早速始めましょう!
1.mBaaSでAPIキー取得
まずはmBaaSの会員登録(無料)します。登録が完了してログインをすると、下図のように「アプリの新規作成」画面が出るのでアプリを作成します。
アプリを作成すると下図のような画面になります。この2種類のAPIキー(アプリケーションキーとクライアントキー)はXcodeで作成するiOSアプリにmBaaSを紐付けるために使用します。
動作確認後に写真(画像)が保存される場所も確認しておきましょう。
2.サンプルプロジェクトにAPIキーを設定
GitHubにアクセスしてサンプルプロジェクトをダウンロードしましょう。ボタンをクリックして、さらに
ボタンをクリックしてダウンロードします。ダウンロードが完了したら、ダウンロードしたフォルダを開き、
をダブルクリックしてXcodeを開きます。
AppleDelegate.swift
を開いてAPIキーの設定を行いましょう。
先ほどmBaaSのダッシュボード上で確認したAPIキーを貼り付けます。
それぞれ「YOUR_NCMB_APPLICATION_KEY」と「YOUR_NCMB_CLIENT_KEY」の部分を書き換えます。この時、ダブルクォーテーション(")を消さないように注意してください!書き換えたらファイルを保存しておきましょう。
3.動作確認
いよいよ動作確認ですね!まずはlightningケーブルでiPhoneをMacにつなぎましよう。(実機ビルドが初めての場合はこちらをご覧いただき、実機ビルドの準備をお願いします。)
Xcode画面左上で、接続したiPhoneを選び、実行ボタン(三角の再生マーク)をクリックします。
※ビルド時にエラーが発生した場合の対処方法
- Xcodeのバージョンが古い場合
import NCMB
にエラーが発生し、上手くSDKが読み込めないことがあります - その場合は【Swift】SDKの読み込みにuse framework!が使えない場合の対処方法をご覧いただき、別の読み込み方法をお試しください
アプリが起動したら、①「カメラ」ボタンをタップして、写真を撮影します。次に、②「mobile backendに保存」ボタンをタップします。
写真に名前を付けて「OK」をタップすると写真がクラウドに保存されます 。保存に失敗した場合は画面にエラーコードが表示される仕組みになっています。
※万が一エラーが発生した場合は、こちらよりエラー内容を確認いただけます。
成功したら、mBaaSのダッシュボードから「ファイルストア」を確認してみましょう!
動作確認は以上となります!!
ログイン機能もお手の物
写真保存の実装はいかがだったでしょうか?mBaaSを使えば簡単に設定できることが分かっていただけたと思います!また、mBaaSではソーシャルアプリには欠かせないログイン機能も提供しております!是非そちらの記事もお読みください!最後までお読みいただきありがとうございました!