スポンサーリンク

Unity5でNCMBを試してみる(Androidアプリ作成で落とし穴⇒解決)

Unity5でスマホアプリを作って、NCMB(Nifty Cloud mobile backend)を利用してランキング機能をつけたい!

具体的なアイデアは無い!

(参考)

http://mb.cloud.nifty.com/doc/current/introduction/quickstart_unity.html#/Unity/
NCMB
イントロダクション(Unity)
クイックスタート

http://saitetutan.hatenablog.jp/entry/2016/09/16/230116
2016-09-16
UnityでNCMB使用時にAndroidビルドするとインストール出来ない問題

(環境)
Windows8.1
Unity 5.5.0f3
NCMBに登録
P-02E (古いスマホです。。。)

(1)Unityのインストールと、NCMBへの登録

https://console.mb.cloud.nifty.com/

へ行き、登録したのち、

image

image

(2)Unityの新規プロジェクト作成

image

image

(3)以下のサイトから、NCMB.2.2.0.zip をダウンロード

https://github.com/NIFTYCloud-mbaas/ncmb_unity/releases

image

ZIPファイルをダブルクリックで解凍して、さらに中身をダブルクリックすると、Packageがインストールされる。

image

image

Import をクリック

image

(4)SDKの読み込み

GameObject > Create Empty で、名前を、「NCMBSettings」に変更

image

image

インポートした「NCMB」のフォルダ内にある「NCMBSettings.cs」を、先ほど作成した「NCMBSettings」にドラッグ&ドロップでアタッチ

image

(5)APIキーの設定とSDKの初期化

ヒエラルキー(Hierarchy)の「NCMBSettings」をクリック

image

一旦、シーンを保存しておく(Ctrl+S で、001.unity という名前で保存した)。

NCMBの該当ページで、APIキーの、
「アプリケーションキーー」
「クライアントキー」
をコピーして、それぞれ、Unityの上記該当欄にコピペする。

image

image

(6)サンプルコードの実装

Unityで、GameObject > Create Empty

Projectビューの図の部分で、右クリック > Create > C# Script をクリックして、Test という名前に変更。

image

image

作成されたTest.cs をダブルクリックで開く。VisualStudioが起動する。やや時間がかかる。

using NCMB;

を追加。

image

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

// オブジェクトに値を設定

testClass["message"] = "Hello, NCMB!";
// データストアへの登録
testClass.SaveAsync();

image

Test.csを閉じる。

image

(7)Androidアプリの作成

image

Company Name : test
Product Name : NCMBQuickStart
Other Settingsの中の、Bundle Identifier : com.test.NCMBQuickStart

image

image

<2017/3/27 追記> ←はまりポイント!

(8)ここで、なんととんでもない落とし穴が!

http://saitetutan.hatenablog.jp/entry/2016/09/16/230116
2016-09-16
UnityでNCMB使用時にAndroidビルドするとインストール出来ない問題
Unity NCMB

image

image image

の、”YOUR_PACKAGE_NAME”の4か所を、以下のように変更。名前は、com.test.NCMBQuickStart のところは、アプリ毎にあわせる。

この、YOUR_PACKAGE_NAME って、よく見ると、明らかにおかしいが、いったい、なんでこんなことになっているのか、上記サイトの指摘が無ければ絶対に気付かなかった!

Manifest.xml

なんて知らないし!

image image

これで、保存。

Build をクリックして、NCMBQuickStart001.apk という名前で保存。やや時間がかかる。

自分のスマホにメールで送ってapkをインストールして起動。

今度は、「パッケージの解析中になんたら、、、」のエラーはでず、インストールできた。

起動したあと、NCMBのデータストアを見ると、ちゃんと、データがNCMBに送られている。

image_thumb[7]

これで行けそうである。

 

 

 

(以下の書き込みは、2017/3/27以前のお話)

————————-

Build をクリックして、NCMBQuickStart001.apk という名前で保存。やや時間がかかる。

image

image

やっぱり21MBくらい。

NCMBQuickStart001.apk  を自分のスマホにメールしてインストール。

(参考)http://sugi.sakura.ne.jp/a/151124a.html

スマホで開こうとしたら、

「パッケージの解析中になんたら、、、」のエラーで開けず。。。撃沈。

https://github.com/NIFTYCloud-mbaas/UserCommunity/issues/493
unity5.3.5f1で作成したアプリをandroid端末で実行すると解析エラーになってしまいます #493
Open    takuyayoneda opened this issue on 19 Jul 2016 · 4 comments

(8)最初からやり直し。

UNITYでインポートするアセットのバージョンをNCMB2.2.0から2.0.0に変更。

https://github.com/NIFTYCloud-mbaas/ncmb_unity/releases/tag/v2.0.0

から、NCMB.2.0.0.zip をダウンロードしてImport

そのあとは同じ。

今度は、スマホにインストールはできたが、データストアを見ても、データは反映されなかった。。。とほほ。

(9)めげずに、別のサンプルアプリを、、、

https://github.com/NIFTYCloud-mbaas/Unity_DB_DEMO

image

File > Open Scene > Unity_DB_DEMO.unity

image

なんたらキーを2つ入れる

image

image

image

image

あ、できた。

なぜ、クイックスタートの方はできなかったのだろう。。。ううむ。

本当は、NCMBに頼らずに、Unityの、UnityWebRequestと、自分でRailsサーバを作ってやってみたいが、難しすぎてさっぱりわからない。

そのほか、

http://mb.cloud.nifty.com/doc/current/tutorial/tutorial_unity.html

にあるサンプルは、Unity上では、実行できた。apkにして、スマホでできるかどうかは試していない。

(10)スマホにインストールしようとしてら、

「解析エラー パッケージの解析中に問題が発生しました。」

で、やっぱりインストールできない。

http://saitetutan.hatenablog.jp/entry/2016/09/16/230116
2016-09-16
UnityでNCMB使用時にAndroidビルドするとインストール出来ない問題

Manifest.xml ???

image

image

image

4か所の、YOUR_PACKAGE_NAMEを、例えば、com.test.ShootingGame に変更。

buildして、スマホにapkをインストール。。。できた。

ところがこのゲーム、キーボードがないと操作ができない。画面で登録したが、実際にはNCMBには登録できていなかった。ダメカモ。。。

 

キーワード

UnityWebRequest (昔はWWW)

AssetBundle

https://www.slideshare.net/chabudaigaeshi/about-assetbundle?next_slideshow=2

http://qiita.com/Ijoru/items/c8e002a09f1b9d533adb
Unity5系でのAsset Bundle使い方まとめ
Ijoru
2015年12月16日に更新

スポンサーリンク