Firebase 提供了許多工具,協助您透過「遠端設定」、「雲端通訊」和「應用程式內通訊」等 Firebase 服務,指定使用者群組,進而打造個人化的使用者體驗。使用已連結的 BigQuery 帳戶,就能匯入在 Firebase 外部找到的區隔,並透過 Firebase 服務建立目標體驗。
設定已匯入區隔
您可以使用 Google Cloud BigQuery,將區隔資料匯入 Firebase。BigQuery 提供多種載入資料的方式,您可以自由選擇最適合您設定的方式。

啟用整合功能後:
- Firebase 會在您擁有的 BigQuery 中建立資料集,但 Firebase 具有讀取權。
- Firebase 會定期擷取資料,讓您在 Firebase 控制台中,使用更新後的區隔進行指定目標。
- Firebase 只能讀取這項資料,Firebase 會將這項資料的副本儲存在內部儲存空間。
- 凡是從 BigQuery 資料集中刪除的資料,也會從 Firebase 資料儲存空間中刪除。
啟用 BigQuery 匯入功能
- 前往 Firebase 控制台的「BigQuery 整合」頁面。
- 如果先前未設定 BigQuery 整合,請按照畫面上的指示啟用 BigQuery。
Firebase 控制台"> - 啟用「已匯入區隔」切換按鈕。

啟用從 BigQuery 匯入區隔功能後,系統會執行下列操作:
- Firebase 會自動建立名為
firebase_imported_segments的新 BigQuery資料集。這個資料集包含名為SegmentMemberships和SegmentMetadata的空白資料表。 - 資料集「firebase_imported_segments」也會與網域為
@gcp-sa-firebasesegmentation.iam.gserviceaccount.com的 Firebase 服務帳戶共用。 - Firebase 至少每 12 小時會執行一次作業,從這個資料集讀取資料,且可能每 12 小時就會匯入一次資料。
將資料匯入 BigQuery
您可以使用任何支援的機制,將資料載入 BigQuery,以填入 SegmentMemberships 和 SegmentMetadata 資料表。資料必須符合下列結構定義:
SegmentMemberships
[
{
"name": "instance_id",
"type": "STRING"
},
{
"name": "segment_labels",
"type": "STRING",
"mode": "REPEATED"
},
{
"name": "update_time",
"type": "TIMESTAMP"
}
]
instance_id:特定應用程式安裝的 Firebase 安裝 ID。您必須擷取安裝 ID,然後將這些值填入這個欄位,才能將應用程式安裝次數納入區隔。
segment_labels:裝置 ("instance_id") 所屬的區隔。這些名稱不必易於理解,且可以縮短,以減少 BigQuery 儲存空間用量。這裡使用的每個 "segment_labels" 都必須在 SegmentMetadata 表格中對應一個項目。請注意,這是複數,而 SegmentMetadata 資料表有 "segment_label"。
update_time:目前 Firebase 不會使用這項屬性,但可用於從 BigQuery 刪除不再使用的舊區隔成員資格。
SegmentMetadata
[
{
"name": "segment_label",
"type": "STRING"
},
{
"name": "display_name",
"type": "STRING"
}
]
segment_label:識別特定區隔。SegmentMemberships 表格中列出的每個區隔,都必須在這個表格中有一筆項目。請注意,這是單數,而 SegmentMemberships 資料表則有 "segment_labels"。
display_name:使用者可理解的區隔名稱,方便在使用者介面中顯示。這項資訊用於在 Firebase 控制台中標示區隔。
設定 BigQuery 的帳單
如果應用程式的安裝次數很少,您可能只需要設定 BigQuery 沙箱,即可試用這項新功能。
不過,如果您要將這項功能用於多使用者生產應用程式,則必須設定 BigQuery 用量計費,支付儲存空間費用,以及將資料載入 BigQuery 的機制費用。Firebase 發起的任何讀取作業都不會產生費用。
停用整合功能
如要停用這項整合功能,請前往 Firebase 控制台的「BigQuery 整合」頁面,然後停用「自訂區隔」切換按鈕。
使用匯入的區隔
資料擷取完畢後,即可在 Firebase 控制台中,透過遠端設定或應用程式內通訊等服務指定目標。這項功能與使用資源或 Google Analytics 目標對象指定目標的運作方式相同。

您可以將「已匯入的區隔」做為可指定屬性和區隔之一,並選取已匯入的區隔。此外,這些報表也會估算每個區隔的應用程式例項數量。
您也可以預估符合完整指定條件的執行個體數量。只要您變更目標條件,這項資料就會更新。
用途
您可以使用匯入的區隔,透過多種方式建立目標使用者體驗。本節將列出一些常見情境,說明您可能需要使用這項功能。
向一群使用者傳送通知
假設您有一個允許應用程式內購的應用程式,並提供購物車功能。您也可以使用自訂或第三方分析解決方案 (非由 Google Analytics 提供) 收集與應用程式中使用者行為相關的各種指標。使用這些指標,您可以找出已將商品加入購物車但未完成結帳的使用者群組。
現在假設您想使用 Firebase Cloud Messaging 向這些使用者傳送通知,提醒他們購物車中還有商品。您可以建立名為「incomplete-checkout」的區隔,並納入這些使用者 (以Firebase安裝 ID 識別),然後上傳至 BigQuery,與 Firebase 共用。
Firebase 擷取這項資料後,您就能在通知編輯器中建立以「未完成結帳」為目標的新通知活動,傳送訊息提醒使用者完成結帳。
為部分使用者設定應用程式
假設您使用內部分析解決方案,指出部分使用者無法順利瀏覽應用程式。為協助這些使用者,您想為他們設定應用程式行為,加入簡短的教學影片。
您可以在應用程式中加入 Remote Config,並在應用程式中使用名為「needs_help」的參數,有條件地顯示教學影片。
使用 Analytics 資料建立名為「troubled-users」的區隔,並納入適當的使用者 (以Firebase安裝 ID 識別)。然後將這個區隔及其成員上傳至 BigQuery,與 Firebase 共用。
Firebase 擷取這項資料後,就會在Remote Config 控制台中提供可指定目標的區隔。接著,您可以建立以「有問題的使用者」為目標的條件,並將這個條件的「needs_help」參數設為 true,預設為 false。發布這項設定後,應用程式只會向「問題使用者」區隔中的使用者顯示教學影片。
追蹤跨裝置使用者歷程
假設您使用 Firebase 和 Google Analytics 建構了餐廳評論應用程式。根據收集到的指標,您發現使用者經常透過行動裝置和平板電腦存取應用程式。您也發現使用者偏好在平板電腦上撰寫評論,但可能會在任何裝置上閱讀評論。
部分使用者會在手機上開始撰寫評論,但可能因為手機螢幕較小而放棄。您可以決定在平板電腦上向這類使用者傳送通知,提醒他們完成評論。
如要這麼做,您可以針對已登入的使用者,使用 Google Analytics 將內部產生的 reviewerId 設為 UserId,並觸發事件來識別已取消的評論。然後將應用程式的 Google Analytics 資料匯出至 BigQuery。
在 BigQuery 中分析這項資料,即可找出使用者在手機上撰寫評論但未完成,並取得平板電腦的 Firebase 安裝 ID。您可以將這個群組命名為「tablets-of-users-who-cancelled-on-phone」,然後將區隔上傳至 BigQuery,與 Firebase 共用成員名單。
Firebase 擷取這項資料後,您就能在通知撰寫工具中,將這項資料做為可指定目標的區隔。接著,您可以建立新的通知廣告活動,指定「在手機上取消訂閱的使用者平板電腦」,傳送訊息提醒這些使用者在平板電腦上完成評論。