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

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

アプリの中でアプリケーションキーを切り替える

f:id:mbaasdevrel:20181016181532p:plain

mBaaSでは通常、1つのスマートフォンアプリに対して1つのmBaaSアプリを割り当てます。しかし、アプリを無料版と有料版で分けている場合、ビジネス版とパーソナル版で分けている場合などでは複数のアプリケーションキーを使い分けたいと考えることもあるでしょう。

そこで一つのアプリの中でmBaaSの接続先を切り替える方法を紹介します。

iOSの場合

iOSの場合、1つのアプリの中で1つのmBaaSアプリしか使えません。そのため、キーを上書きします。

NCMB.setApplicationKey(keys.applicationKey1, clientKey: keys.clientKey1)
// アプリを切り替え
NCMB.setApplicationKey(keys.applicationKey2, clientKey: keys.clientKey2)

この場合、一旦切り替えた後、再度戻すのを忘れないようにしなければいけません。

Androidの場合

Androidも同様です。

NCMB.initialize(this.getApplicationContext(),"APP_KEY1","CLIENT_KEY1");
// アプリを切り替え
NCMB.initialize(this.getApplicationContext(),"APP_KEY2","CLIENT_KEY2");

JavaScript/Monacaの場合

JavaScriptの場合、インスタンスを作るので複数を同時に設定可能です。

const ncmb1 = new NCMB("YOUR_APPLICATION_KEY1","YOUR_CLIENT_KEY1");
const ncmb2 = new NCMB("YOUR_APPLICATION_KEY2","YOUR_CLIENT_KEY2");

JavaScriptの場合は変数自体が分かれますので、使い分けが容易でしょう。

Unityの場合

UnityはNCMBSettingsをアタッチするので、複数の接続先を設定するのは困難と思われます。

まとめ

インスタンスを作る(JavaScript)と作らない(iOS/Android)とで実装方法が異なるので注意してください。アプリケーションキーを切り替えるだけであれば、コストは殆どなく利用できます。ただし、切り替えた後に元に戻すのを忘れないようにしてください。

中津川 篤司

中津川 篤司

NCMBエヴァンジェリスト。プログラマ、エンジニアとしていくつかの企業で働き、28歳のときに独立。 2004年、まだ情報が少なかったオープンソースソフトの技術ブログ「MOONGIFT」を開設し、毎日情報を発信している。2013年に法人化、ビジネスとエンジニアを結ぶDXエージェンシー「DevRel」活動をスタート。