FireBase 屬於 BaaS (Backend as a Service)

建置方式

  1. 去 firebase console
  2. 新增專案
    1. 地點可以選臺灣
  3. 把 FireBase 新增至 Andriod 應用程式
    1. 可不用填 SHA1

FCM(伺服器推撥)

firebase 的 function 相當於 services 上的程式,如果你不想架設 services,那麼就需要用 services

Untitled

推播步驟

  1. 手機響傳訊息
    1. 把訊息存至 DB
    2. 找 server 幫忙推那個東西的 ID 到對方手機
    3. 對方手機收到 ID 後,發請求去 DB 拿東西

點擊訊息後,開啟的其實是 APP 的 activity,然後 activity 會拿到 bundle

在 mainactivity

val data = intent.extras?.getString("data")

// 在 java 的 FCMservlet 設置的

如果你有多個 Build Variant,那麼你必須在 build.gradle(:app) 底下加入:

android.applicationVariants.all { variant ->
    def task = project.tasks.getByName("process${variant.name.capitalize()}GoogleServices")

    switch (variant.flavorName) {
        case "Momisure":
        case "IDT_OUcare":
        case "IDT_OUcare_Beta":
        case "IDT_OUcare_new":
            task.enabled = true
            break
        case "CBT_OUcare":
        case "BPM_OUcare":
        default:
            task.enabled = false
            break
    }
}