Jetpack Telecom 程式庫初次推出時,導入了 CallsManager,取代舊版 ConnectionService API,簡化 VoIP 整合。CallsManager 可簡化通話生命週期管理和音訊轉送作業,同時與智慧手錶、藍牙裝置和 Android Auto 等遠端介面互動。此外,Telecom Jetpack 程式庫也支援通話擴充功能,可提供更豐富的功能,例如參與者處理、自訂圖示、通話靜音和遠端介面上的會議摘要,同時維持與 Android O (API 級別 26) 的回溯相容性。
Jetpack Telecom 1.1.0 版以此為基礎,為第三方 VoIP 應用程式提供原生層級的資訊和便利性。最新版本推出多項強大新功能,包括整合通話記錄、通話記錄排除和原生回呼函式,讓使用者更輕鬆管理通話。
以下將詳細介紹新功能,以及如何在應用程式中實作這些功能。
彌補撥號程式落差:整合通話記錄和回呼
以往,使用者必須開啟個別第三方應用程式,才能查看 VoIP 通話記錄或回撥未接來電。有了全新的整合式通話記錄功能,系統撥號應用程式現在可以直接顯示第三方 VoIP 應用程式的通話記錄。
更棒的是,使用者現在可以直接從原生系統撥號器回撥給 VoIP 聯絡人,簡化通訊體驗。
運作方式:
如要選擇加入這項功能,請按照下列步驟操作:
- 註冊回呼:VoIP 應用程式必須註冊新的系統保護意圖:
TelecomManager.ACTION_CALL_BACK。 - 記錄通話:使用
TelecomManager.addCall(或相關 Jetpack API),確保系統自動記錄通話。 - 管理通話 ID:註冊通話時,
CallControlScope.getCallId會提供專屬 UUID。系統撥號程式在建立回呼意圖時,會使用這個確切的TelecomManager.EXTRA_UUID。 - 發起回電:應用程式必須儲存及管理與這個 UUID 相關聯的通話詳細資料。系統撥號程式使用
EXTRA_UUID觸發回呼意圖時,應用程式就能順暢解析 ID,並使用正確的詳細資料發起通話。
精細控管:排除通話記錄
我們瞭解,並非所有 VoIP 通話都應顯示在系統的原生撥號程式記錄中。無論是基於隱私考量、臨時通訊或應用程式專屬行為,您都需要控管顯示的內容。
為解決這個問題,我們推出了通話記錄排除功能。現在,只要在 CallAttributesCompat 中將 isLogExcluded 布林值設為 true,即可防止特定通話記錄到系統通話記錄中。設定這個標記後,通話記錄就不會顯示在系統記錄和原生撥號程式中。
相容性重要注意事項
這些整合式記錄和回呼功能適用於搭載 Android 16.1 (SDK 36.1) 以上版本的裝置。請參閱這裡,瞭解如何使用 Android SDK 36.1 編譯應用程式。
開始使用
我們鼓勵開發人員測試這些整合功能,並探索整合通話記錄和回撥功能如何改善 VoIP 應用程式的日常使用者體驗。
為協助您開始使用並瞭解這些 API 的實際運作方式,我們製作了一個範例應用程式,示範新的整合功能。
注意:雖然 Jetpack Telecom v1.1.0 API 可用於整合,但系統撥號程式顯示原生通話記錄的功能將分階段推出,首先從 Google Meet 開始。為防範垃圾內容,原生撥號程式會使用安全套件許可清單,控管 VoIP 顯示。如要在本機測試回呼和記錄實作,建議使用開放原始碼的電信範例撥號應用程式做為模擬器環境。
-
產品最新消息今天,我們在 Android 開發人員高峰會上宣布,將廣泛提供多項工具和 API,旨在消除日常摩擦,讓您更靈活地建構出色的 Android 應用程式。
Matthew McCullough • 閱讀時間:4 分鐘 -
產品最新消息Android Studio Rabbit 2 穩定版已推出,可供您在正式環境中使用。此版本包含多項重要功能,可提升開發效率,例如「自備代理」、全新 XR 模擬器功能、LeakCanary 更新、全新代理技能管理工具、AI 程式碼審查等。
Matthew Warner • 閱讀時間:3 分鐘 -
產品最新消息如果應用程式指定即將推出的 Android 版本,將無法再透過 WRITE_CONTACTS 權限直接寫入聯絡人資料。
Roxanna Aliabadi Walker • 閱讀時間:6 分鐘
每週透過電子郵件接收 Android 開發人員的最新深入分析。