Live Activity

Elevating Parking Experience with iOS Live Activities

「車麻吉」App 的核心服務是致力於簡化停車流程,從找車位、停好車到繳費離場,讓車主無需額外操作,享受無感直接出場的停車付款體驗。

在停車過程中,進場到離場間的資訊傳遞一直有可改善空間。加上發現部分車主若將推播關閉也間接影響透過自動付款出場的轉換率。

2023 年底,iOS 17.2 開放將 Live Activity 即時動態直接推送至鎖定畫面,不需先行開啟 App,可以將關鍵停車中資訊顯示至鎖定畫面。車主無需反覆開啟 App 確認停車時數與費用,點亮螢幕即可一目瞭然,不僅讓停車體驗更加無縫,更有效提升支援場站的付款轉換率。

Product

車麻吉 Carmochi

Platform

iOS

Timeline

2023.12 - 2024.06

My Role

UX / UI

既有流程
  1. 系統推播:在進場、離場、付款分別發送推播,每則推播是獨立訊息,用戶同一次停車紀錄會收到多次推播,點擊推播開啟停車卡片。

  2. App 內的停車資訊卡片:進場後,用戶開啟 App 可查看當前停車位置、停車時數與預估金額。

使用痛點

🤳 頻繁解鎖的操作負擔
對於需要快速確認「還停多久、大概多少錢」的停車中用戶,反覆「解鎖 → 開啟 App → 查看卡片」的操作路徑太長。停車這件事本身不需要這麼多注意力,但既有功能沒辦法滿足快速查看的需求。

💬 碎片化通知造成認知負擔
流程推播採分階段發送「進場 → 離場 → 付款」,用戶需自行比對多則通知才能理解自己當前狀態。而多數情境下,用戶只需掌握最新停車狀態,堆疊的通知反而增加了理解負擔。

⚙️ 通知權限關閉導致資訊斷層
App 的推播系統尚缺乏分類機制,無法區分「行銷訊息」與「停車資訊」的通知權限。當用戶因排斥收到「行銷訊息」而關閉全部推播,就會錯過進場通知,不知道當前停車場支援付款,導致可以直接出場卻去手動繳費,付款服務的轉換因此流失。

設計目標

體驗面
讓停車中的用戶在不解鎖、不開啟 App 的前提下,隨時掌握當前停車狀態(時數與預估費用),並在整個停車旅程中保持資訊連貫性。

商務面
透過改變資訊傳遞方式,減少因關閉「推播權限」問題導致付款轉換流失,提升自動付款出場的轉換率。

為什麼是 Live Activity?

降低資訊獲取路徑
透過 Live Activity 將關鍵停車資訊延伸至 iOS 鎖定畫面。無需解鎖或開啟 App,喚醒螢幕即可掌握停車狀態,大幅縮短資訊獲取路徑。

確保停車資訊接收
利用 Live Activity 特性繞過推播權限限制,讓停車資訊能有效傳遞給用戶,減少因推播權限關閉而產生的資訊斷層。

以動態更新整合碎片化資訊
將原本分散的多則靜態通知,整合為單一即時動態卡片。透過狀態更新取代推播堆疊,用戶在同一介面獲取連貫的停車資訊。

※ iOS 16.1 開放 ActivityKit API;iOS 17.2 起允許 App 透過遠端推送直接啟動即時動態,不需使用者先開啟 App。

Live Activity 三個關鍵狀態

停車旅程有明確的順序性,將其拆解為三個資訊階段,每個狀態呈現的內容都是當下車主所需的關鍵資訊。

進場

停車

離場

Stage 1 — 進場

系統辨識車牌進入支援場站後,首要任務不是顯示時間或金額數字,而是告知用戶此停車場支援自動付款。如果用戶不知道這件事,後面的無感體驗可能都會錯過。

若用戶尚未綁定信用卡,卡片將顯示提示文案,引導在停車期完成設定,預先排除「離場才發現無法自動付款」的阻礙。

Stage 2 — 停車中

停車計時開始後,卡片切換持續顯示「預估金額」與「停車時數」狀態。這是整個旅程中持續最長、查看頻率最高的狀態,也是 Live Activity 在此情境中最核心的使用場景。

※資訊的選擇是收斂的結果。曾考慮加上顯示停車場名稱,但發現停車中用戶只需要兩個最重要資訊「停多久了」和「多少錢」,其他內容在這個時間點是干擾。

Stage 3 — 離場

車輛離場後,卡片更新為完成付款狀態,呈現最終交易結果與金額。

Dynamic Island 動態島

導入 Live Activity 的同時,需同步開發 ActivityKit 依附下的 Dynamic Island,包含緊湊(Compact)、分離(Minimal)與擴展(Expanded)三種狀態。

Compact 模式只顯示「停車 icon」,不顯示時間或費用,因為 Live Activity 的資訊是週期性更新,而非逐秒更新,若在 Compact 模式顯示時間或金額,用戶可能頻繁查看卻看到靜止的數字,反而製造焦慮。

Dark / Light Mode 模式

適配 iOS 系統層級的色彩規範,設計 Dark 與 Light 兩種介面模式,確保即時動態卡片在不同系統設定下皆能維持高對比度與資訊易讀性。

上線後:網路穩定性對體驗的影響

實際場景問題

功能上線後,我們透過用戶回饋與數據埋點發現了一個規劃階段未能遇見的 Edge Case,在網路收訊較差的環境下,系統無法成功發送 Update Token,導致即時動態無法獲取週期性數據更新,發生兩項體驗問題:

  • 資訊停滯與錯誤預期:停車時數持續停留在「0 分鐘」,用戶無法掌握正確的停車時間與預估費用,失去 Live Activity 應有的即時性。

  • 卡片狀態無法結束:即使車主已離場,卡片因未收到 End Token 而殘留在鎖定畫面,讓用戶產生「是否仍在計費」的疑慮。

設計迭代

調整卡片 Default 預設顯示方式,在首個 Update Token 成功接收之前,卡片不顯示「0 分鐘」,改為顯示「查看停車金額與時數」的提示文案,解決了以下問題:

  • 校正用戶預期:當用戶第一次看到時間,即是成功接收到 Update Token 的時間,消除對資訊準確性的疑慮。

  • 引導觸發手動更新:「查看停車金額與時數」提示文案引導用戶點擊卡片開啟 App,系統藉此重新獲取 Update Token,確保後續停車資訊能成功推送。

與工程開發協作新技術功能

Live Activity 推出初期,開發文件稀缺、規範尚在摸索,缺乏社群經驗可參考。我與開發團隊、PM 緊密協作,在實作中反覆測試功能與摸清介面設計的規範,面對更新頻率技術框架限制,在規範內進行預防性設計,確保在各種網路情境下都能減少體驗問題。

成果與影響:建立產品差異化優勢

Live Activity 上線後,車麻吉在支援場站的自動付款出場轉換率有明顯提升,主要來自兩個方向:
① 原本因關閉推播權限而流失的用戶重新獲得資訊。
② 查看停車資訊從「需開啟 App」改變至「鎖定畫面直接看」,資訊獲取的操作摩擦大幅降低。

在功能推出時機上,我們在 Live Activity 開放初期即率先應用於「停車」場景,在交通類產品中建立了差異化優勢,也為產品後續探索其他動態資訊場景建立設計規範基礎。