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/
へ行き、登録したのち、
(2)Unityの新規プロジェクト作成
(3)以下のサイトから、NCMB.2.2.0.zip をダウンロード
https://github.com/NIFTYCloud-mbaas/ncmb_unity/releases
ZIPファイルをダブルクリックで解凍して、さらに中身をダブルクリックすると、Packageがインストールされる。
Import をクリック
(4)SDKの読み込み
GameObject > Create Empty で、名前を、「NCMBSettings」に変更
インポートした「NCMB」のフォルダ内にある「NCMBSettings.cs」を、先ほど作成した「NCMBSettings」にドラッグ&ドロップでアタッチ
(5)APIキーの設定とSDKの初期化
ヒエラルキー(Hierarchy)の「NCMBSettings」をクリック
一旦、シーンを保存しておく(Ctrl+S で、001.unity という名前で保存した)。
NCMBの該当ページで、APIキーの、
「アプリケーションキーー」
「クライアントキー」
をコピーして、それぞれ、Unityの上記該当欄にコピペする。
(6)サンプルコードの実装
Unityで、GameObject > Create Empty
Projectビューの図の部分で、右クリック > Create > C# Script をクリックして、Test という名前に変更。
作成されたTest.cs をダブルクリックで開く。VisualStudioが起動する。やや時間がかかる。
using NCMB;
を追加。
// クラスのNCMBObjectを作成
NCMBObject testClass = new NCMBObject("TestClass");
// オブジェクトに値を設定
testClass["message"] = "Hello, NCMB!";
// データストアへの登録
testClass.SaveAsync();
Test.csを閉じる。
(7)Androidアプリの作成
Company Name : test
Product Name : NCMBQuickStart
Other Settingsの中の、Bundle Identifier : com.test.NCMBQuickStart
<2017/3/27 追記> ←はまりポイント!
(8)ここで、なんととんでもない落とし穴が!
http://saitetutan.hatenablog.jp/entry/2016/09/16/230116
2016-09-16
UnityでNCMB使用時にAndroidビルドするとインストール出来ない問題
Unity NCMB
の、"YOUR_PACKAGE_NAME"の4か所を、以下のように変更。名前は、com.test.NCMBQuickStart のところは、アプリ毎にあわせる。
この、YOUR_PACKAGE_NAME って、よく見ると、明らかにおかしいが、いったい、なんでこんなことになっているのか、上記サイトの指摘が無ければ絶対に気付かなかった!
Manifest.xml
なんて知らないし!
これで、保存。
Build をクリックして、NCMBQuickStart001.apk という名前で保存。やや時間がかかる。
自分のスマホにメールで送ってapkをインストールして起動。
今度は、「パッケージの解析中になんたら、、、」のエラーはでず、インストールできた。
起動したあと、NCMBのデータストアを見ると、ちゃんと、データがNCMBに送られている。
これで行けそうである。
(以下の書き込みは、2017/3/27以前のお話)
————————-
Build をクリックして、NCMBQuickStart001.apk という名前で保存。やや時間がかかる。
やっぱり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
File > Open Scene > Unity_DB_DEMO.unity
なんたらキーを2つ入れる
あ、できた。
なぜ、クイックスタートの方はできなかったのだろう。。。ううむ。
本当は、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 ???
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日に更新
ディスカッション
コメント一覧
まだ、コメントがありません