Edited at

KotlinでmBaaSを始めよう!

More than 1 year has passed since last update.


概要


  • この記事はKotlinアプリに ニフクラ mobile backend (mBaaS)を導入する方法記載しています。

  • さらに簡単にmBaaSが導入できましたのでその方法をご紹介します。


準備するもの


  • PC


    • Mac OS X 10.13 (High Sierra)で動作確認しています



  • Android Studio 2.x、3.0


  • ニフクラ mobile backend の登録とアプリの新規作成

※使用した環境を記載しています

※上記環境以上でないと動作しない可能性があります。


手順


1. Android StudioでKotlinのプロジェクトを作成する



  • Android Studio 3の場合


    • Android Studioを起動して、「Start a new Android Studio project」を選択します。

    • 次の画面に「Include Kotlin support」というチェックマークがあるので、こちらをチェックして、あとは普通にプロジェクトを作っていきます。
      StartProjectKotlin.png




  • Android Studio 2.xの場合


    • プラグインを入れます。


      • メニューから「Preference」を開きます。

      • 左ペインから「Plugins」を選択し、「Install JetBrains plugin..」を選択します。

      • サーチバーで「Kotlin」と検索し、「Kotlin」というプラグインをインストールします。

      • Android Studioを再起動します。

        KotlinPlugin.png



    • Kotlinファイルをビルドするための設定


      • メニューバーの「Tools」から「Kotlin」を選択し、 「Configure Kotlin in Project」を選択します。

      • 任意のKotlinのバージョンを選択してもよいです。
        ConfigKotlin.png



    • JavaファイルをKotlinへ変換します


      • 任意Javaファイルを選択し、メニューの「Code」を選択し、「Convert Java File to Kotlin File」を選択します。

      • 自動でコンバートされます。
        ConverJavaToKotlin.png






2. Android用SDKをインストールする



  • NCMBのGithubリリースページのNCMB.x.x.x.zip ボタンからダウンロードしてください。

  • プロジェクトを右クリックし、メニューから「Open Module Settings」を選択します。


  • 「Project Structure」「Modules」を選択し、「+」ボタンを押して「Import .JAR/.AAR Package」を選択します。


  • NCMB.jarを選択し、「Finish」ボタンをクリックします。

  • 作成したModuleをModule dependencyとしてプロジェクトに追加します。
    Dependencies.png


3. インストールしたSDKを読み込む



  • MainActivity.ktファイルのpackage <application_package>の下に、下記の内容を追記します。


Kotlin

import com.nifty.cloud.mb.core.NCMB


※【注意】他のファイルでSDKを使用する場合は、その対象ファイルにも上記を追記する必要があります!


4. MainActivity.ktを編集する



  • ニフクラ mobile backend を使うために必要なAPIキーの設定とSDKの初期化処理はMainActivity.ktここに書いておきます

  • 下記のコードをMainActivity.ktに貼り付けてください。

  • そのとき、2つのAPIキーをニフクラ mobile backend のダッシュボード上からコピーして書き換えてください(※アプリケーションキーとクライアントキーをそれぞれ「YOUR_NCMB_APPLICATIONKEY」と「YOUR_NCMB_CLIENTKEY」の部分に書きます)


Kotlin

//********** APIキーの設定 **********

const val applicationKey:String = "YOUR_NCMB_APPLICATIONKEY"
const val clientKey:String = "YOUR_NCMB_CLIENTKEY"

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
//********** SDKの初期化 **********
NCMB.initialize(applicationContext, applicationKey, clientKey)
//▼▼▼起動時に処理される▼▼▼

//▲▲▲起動時に処理される▲▲▲
}
}



5. mBaaSのコードを試してみよう!


  • 下記のサンプルはデータストアにデータを上げるサンプルコードです。実際に書いて(コピペして)実行してみましょう!


Kotlin

// クラスのNCMBObjectを作成

var obj = NCMBObject("TestClass")
// オブジェクトに値を設定
/** 文字列 **/
obj.put("message", "Hello, NCMB!")
/** 配列 **/
obj.addUniqueToList("array", listOf("A","B","C"))
// データストアへの保存を実施
obj.saveInBackground { e ->
if (e != null) {
// 保存に失敗した場合の処理
} else {
// 保存に成功した場合の処理
}
}


  • 実行し、ニフクラ mobile backend のダッシュボードからデータストアを見ると、データが保存されたことが確認できます!