1. 概念
直接共享是一項功能,
允許應(yīng)用直接在 系統(tǒng)“意圖選擇器對話框”(Intent chooser dialog)中 顯示 指定應(yīng)用的選項.
用戶可以從其它應(yīng)用分享內(nèi)容時趁仙,直接跳轉(zhuǎn)到你的應(yīng)用.
例如,短信應(yīng)用 使用 直接分享娇澎, 可以使得用戶 直接分享內(nèi)容 給一個聯(lián)系人瓤介,通過一個 chooser 對話框提示.
直接共享 使得 分享內(nèi)容 更加 快捷和容易.
2. 與ShortCuts 協(xié)同工作
直接共享與 共享快捷方式(Sharing ShortCuts) 的概念一起工作.
應(yīng)用程序可以 優(yōu)先 發(fā)布共享目標(biāo)么抗,允許 系統(tǒng)Intent選擇器對話框 在需要時顯示它們.
為了 發(fā)布共享目標(biāo) 苹祟, 我們使用 ShortcutManager API砸抛。
任何 已發(fā)布的共享快捷方式,均會保存在系統(tǒng)树枫,直到 應(yīng)用更新 它們直焙, 或者 應(yīng)用已被卸載.
當(dāng)顯示給用戶時,系統(tǒng)會根據(jù)預(yù)測服務(wù)對任何適用的快捷方式 進行排名团赏,
使得顯示了更加可能被使用的快捷方式.
注:Android M 開始推出 直接共享(Direct Share)概念箕般,使用ChooserTargetService 提供直接共享目標(biāo)
Android Q 開始使用ShortcutManager API 實現(xiàn)耐薯, 即ShortCut 快捷方式
3. 示例內(nèi)容介紹.
將使用可以接收 包含純文本的 Intent 的 Message 應(yīng)用.
用戶從其他應(yīng)用程序(或我們正在構(gòu)建的應(yīng)用程序)分享一些文本時舔清,
該應(yīng)用程序?qū)⒆鳛橐粋€選項列出。
通過使用 直接共享功能曲初,此應(yīng)用程序還發(fā)布了 顯示在 系統(tǒng) Intent 選擇器對話框中 的一些聯(lián)系人体谒。
4. 將學(xué)到什么
如何在應(yīng)用中實現(xiàn) 直接分享
如何使 Direct Share 向后兼容舊的 Android 版本
如何在共享內(nèi)容中顯示 內(nèi)容預(yù)覽
5. 知識準(zhǔn)備
基本 Kotlin 知識(此 Codelab 使用 Kotlin)
Android Studio 3.3 或更高版本
運行 API 21+ 的模擬器或設(shè)備
參考文獻:
https://developer.android.com/codelabs/android-direct-share#0