Skip to content
This repository has been archived by the owner on Apr 1, 2024. It is now read-only.

NIFCLOUD-mbaas/Unity_DB_DEMO

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

【Unity】ニフクラmobile backend を体験しよう!

画像1

  • 本サンプルは不具合がある場合、issue等から報告いただくようにお願いいたします
  • 作成日:2016/7(更新日:2020/3)

概要

  • Unityで作成したiOSアプリから、ニフクラmobile backendへデータ登録を行うサンプアプリです

  • 「START DEMO」ボタンをタップするとクラウドにデータが上がります★

  • 簡単な操作ですぐに ニフクラmobile backendを体験いただけます

ニフクラmobile backendって何??

スマートフォンアプリのバックエンド機能(プッシュ通知・データストア・会員管理・ファイルストア・SNS連携・位置情報検索・スクリプト)が開発不要、しかも基本無料(注1)で使えるクラウドサービス!今回はデータストアを体験します

注1:詳しくはこちらをご覧ください

画像2

動作環境

  • MacOS Venture version 13.4.1
  • Android Studio Chipmunk | 2021.2.1 Patch 2
  • Pixel 2 - Android 13 (Simulator)
  • Xcode 15.0
  • Unity 2022.2.19 (LTS)
  • iPhone SE (iOS 17)
  • Unity SDK v5.1.1

※上記内容で動作確認をしています。

手順

1. ニフクラmobile backendの会員登録とログイン→アプリ作成

  • 上記リンクから会員登録(無料)をします。登録ができたらログインをすると下図のように「アプリの新規作成」画面が出るのでアプリを作成します

画像3

  • アプリ作成されると下図のような画面になります
  • この2種類のAPIキー(アプリケーションキーとクライアントキー)はUnityで作成するアプリにニフクラmobile backendを紐付けるために使用します

画像4

  • この後動作確認でデータが保存される場所も確認しておきましょう

画像5

2. GitHubからサンプルプロジェクトのダウンロード

  • この画面(GitHub)の画像10ボタンをクリックし、さらに画像14ボタンをクリックしてサンプルプロジェクトをMacにダウンロードします

3. Unityでアプリを起動

ダウンロードしたフォルダを解凍し、Unityから開いてください。その後、Unity_DB_DEMOシーンを開いてください。

4. APIキーの設定

  • Unity_DB_DEMOシーンのNCMBSettingsを編集します
  • 先程ニフクラmobile backendのダッシュボード上で確認したAPIキーを貼り付けます

画像07

  • それぞれ「Application Key」と「Client Key」のテキストフィールドに「アプリケーションキー」と「クライアントキー」を貼り付けます

5. 動作確認

  • Unity画面で上部真ん中の実行ボタン(さんかくの再生マーク)をクリックします

画像12

  • シミュレーターが起動したら画像13ボタンをタップします

  • 動作結果が画面に表示されます

  • 保存に成功した場合:「保存に成功しました。objectId : ******

  • 保存に失敗した場合:「エラーが発生しました。ErrorCode : ******

  • objectIdはデータを保存したときに自動で割り振られるIDです

  • 万が一エラーが発生した場合は、こちらよりエラー内容を確認いただけます 画像1

  • 保存に成功したら、ニフクラmobile backendのダッシュボードから「データストア」を確認してみましょう!

  • TestClassという保存用クラスが作成され、その中にデータが確認できます

iOS端末へのビルド
  • iOSビルド手順は以下のとおりです。
    iOS端末でビルドを行うには、Unityで.xcodeprojファイルを作成します。
  • 「Build Settings」へ戻り、Platformで「iOS」を選択 -> 「Switch Platform」をクリックします。

iOS

  • ボタンが「Build」に変わったらクリックします。アプリ名を入力するとビルドが開始されるので、完了したらXcodeで開いてください。

  • XcodeでPush Notificationの追加とプロビジョニングファイルの設定を行う必要があります。iOSのドキュメントの「5.1 Xcodeでの対応」を実装してください。

Xcodeの追加設定
  • iOSであり、Unity SDK v4.0.4以上の場合、Xcode側にて「WebKit.framework」「UserNotifications.framework」を追加する必要があります。
  • Xcodeで「Unity-iPhone」-> General -> TARGETで「UnityFramework」を選択します。追加されているライブラリ一覧の下にある「+」をクリックします。

フレームワークの追加

* 検索窓にて「Web」と入力し、「WebKit.framework」があるので選択しAddをクリックします。

リッチプッシュ設定方法2

  • 「UserNotifications.framework」ライブラリも同じように検索して追加します

iOS

ライブラリ一覧に追加されていることが確認できれば設定完了です。

※注意1: Unity SDK v4.2.0以上を使用している場合、上の2つに加えて「AuthencationServices.framework」も追加する必要があります。

  • 「Build Phases」 タブで「AuthenticationServices.framework」を「Optional」にします。

※注意2: Unity 2019.3未満の場合は、以下の画像のように TARGET->「Unity-iPhone」でフレームワークを追加するようにしてください。 こちらも「WebKit.framework」「UserNotifications.framework」「AuthenticationServices.framework」を追加する必要があります。

  • 上記が完了しましたら、iOS動作確認は可能となります。

解説

サンプルプロジェクトに実装済みの内容のご紹介

SDKのインポートと初期設定

ロジック

  • Hierarchy内のCanvasでUIをデザインし、Unity_DB_DEMO.csにロジックを書いています
  • testClassオブジェクトに対してkey, value形式で値をセットし、saveInBackgroundWithBlockメソッドを実行すると、非同期にてデータが保存されます
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using NCMB;

public class Unity_DB_DEMO : MonoBehaviour {
	public Text result;
	// Use this for initialization
	void Start () {

	}

	// Update is called once per frame
	void Update () {

	}

	public void Start_Demo(){
		// クラスのNCMBObjectを作成
		NCMBObject testClass = new NCMBObject("TestClass");

		// オブジェクトに値を設定
		testClass["message"] = "Hello, NCMB!";

		// データストアへの登録
		testClass.SaveAsync((NCMBException e) => {
				if (e != null) {
					result.text += "保存に失敗しました。\n ErrorCode : " + (string)e.ErrorMessage+ "\n";
					UnityEngine.Debug.Log ("保存に失敗: " + e.ErrorMessage);
				} else {
					result.text += "保存に成功しました。\n objectId : " + (string)testClass.ObjectId + "\n";
					UnityEngine.Debug.Log ("保存に成功");
				}
			}

		);

	}
}

参考

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 97.3%
  • Objective-C 2.7%