App Clip,你需要知道


相關信息:

Developing a Great App Clip

Creating an App Clip

 

背景

創建一個App Clip(應用剪輯),讓沒有安裝完整應用程序的用戶可以使用你的應用程序的一些功能。

app clip是應用程序的一個輕量級版本,可以隨時隨地為用戶提供一些功能。以用戶從app Store下載的一個咖啡店應用為例:它允許用戶在設備上點一杯飲料,保存喜歡的飲料,收集獎勵,獲得特別優惠,等等。
相比之下,app剪輯只提供了點飲料的功能。當用戶經過咖啡店時,系統會在用戶的設備上顯示Siri的位置建議。用戶點擊建議,在系統提供的app clip卡上確認app clip啟動,立即使用app clip點一杯飲料。

用戶通過執行調用找到一個應用程序剪輯;例如,點擊Siri提示中的位置提示,或者掃描一個NFC標簽。app clip會即時啟動,幫助用戶盡可能快地執行日常任務,並且只會在用戶需要的時候停留在設備上。
當用戶安裝app clip對應的app時,完整的app會替換app clip。從現在開始,每次調用都會啟動完整的應用程序而不是應用程序剪輯,用戶會在完整的應用程序中獲得應用剪輯的功能。如果用戶沒有安裝完整的應用程序,系統會在一段時間的不活動后自動刪除應用剪輯。
再次以咖啡店的app clip為例:用戶使用后,app clip會向用戶推薦相應的應用,用戶就會下載該應用。下次當用戶看到基於位置的建議並點擊它時,他們就會啟動完整的應用,而不是app clip。如果他們沒有安裝完整的應用程序,點擊建議繼續啟動應用程序剪輯。

概述

在你的Xcode項目中,你的應用剪輯是一個額外的目標,它與你的應用的目標共享代碼和資產。你的app clip也可以訪問與整個app相同的框架。例如,你的app clip可以請求訪問攝像頭,在本地密鑰鏈中存儲敏感數據,連接藍牙設備等等。

然而,應用程序剪輯在保護用戶隱私和保存資源方面存在局限性。在你確定你的應用程序的哪些功能可以成為一個好的應用程序剪輯之前,先回顧一下應用程序剪輯可用的技術。

請注意

你的完整的應用程序可以有一個應用剪輯,在應用剪輯的功能必須完全支持在整個應用程序。

理解用戶如何啟動應用程序剪輯

用戶通過執行以下調用之一來啟動app剪輯:


掃描一個物理位置的NFC標簽或可視代碼
點擊Siri建議中的基於位置的建議
點擊地圖應用中的鏈接
點擊網站上的智能應用程序橫幅
點擊別人在消息應用程序中分享的鏈接

當用戶調用應用程序剪輯時,系統首先驗證該應用程序剪輯的元數據及其關聯的調用URL。然后,它使用URL來確定在app clip card上顯示哪些元數據,這是一個在調用時顯示的表單。應用剪輯卡提供了額外的信息,並提供了一個按鈕,用戶可以點擊這個按鈕來啟動應用剪輯。
當用戶啟動應用程序剪輯時,系統將URL傳遞給它。在啟動時,app clip訪問URL並解析它來提取信息,然后使用這些信息來更新它的用戶界面。

提供良好的用戶體驗

應用程序剪輯不會出現在主屏幕上,用戶也不會像管理完整的應用程序那樣管理它們。相反,系統會在一段時間不活動后從設備上刪除一個應用程序剪輯。因此,對於你的應用程序剪輯來說,提供完美的用戶體驗是非常重要的。
應用剪輯避免了復雜的界面元素,如標簽欄或復雜的表單,以提供一個線性的、集中的用戶體驗。當應用程序剪輯需要人們執行更復雜的任務時,他們會使用降低復雜性的技術。例如,應用程序剪輯可以提供Apple Pay來支付服務和商品,或者使用Apple的登錄來避免復雜的注冊表單。
有關設計指南,請參見人機界面指南

應用剪輯大小限制

應用程序剪輯必須很小——不超過10 mb——以提供即時啟動。如果可能,保持你的應用剪輯低於這個限制。有關更多信息,請參見創建應用程序剪輯

 

關於現有的框架

應用剪輯使用了SwiftUI和UIKit,並且可以使用與完整應用相同的框架。但是,以下框架不能用於應用剪輯:CallKit, CareKit, CloudKit, HealthKit, HomeKit, ResearchKit, SensorKit和Speech。
在app剪輯中使用這些框架不會導致編譯時錯誤,但它們的api會在運行時返回顯示不可用、空數據或錯誤代碼的值。例如,當你從一個應用剪輯中調用HealthKit的isHealthDataAvailable()時,它會返回false。

保護用戶隱私

應用剪輯可能會顯示廣告,並推薦使用SKOverlay或SKStoreProductViewController的其他應用。然而,限制應用跟蹤總是啟用在應用剪輯,以保護用戶的隱私,防止用戶跟蹤應用程序和應用剪輯。
App剪輯不能通過AppTrackingTransparency請求授權來跟蹤用戶,name和identifierForVendor都返回一個空字符串。此外,應用剪輯不能執行后台活動,比如在應用剪輯不使用時使用URLSession進行后台聯網或維護藍牙連接。App剪輯也不能請求連續的位置訪問。但是,他們可能會請求使用時授權,該授權會在第二天凌晨4點自動重置。
為了保護用戶數據,app剪輯無法訪問:
運動和健康數據
蘋果音樂與媒體
來自聯系人、文件、信息、提醒和照片等應用程序的數據
除了對應的完整應用程序之外,應用程序剪輯不能與任何其他應用程序共享數據。更多信息,請參見應用程序剪輯對應應用程序的數據共享。

為你的整個應用保留一些功能

應用剪輯提供即時體驗,專注於為日常任務提供最快的解決方案,因此一些功能將在您的完整應用中發揮最好的作用。
高級網絡功能,如Bonjour,或配置本地Wi-Fi網絡
應用程序擴展
自定義和設置;例如,創建設置包
數據切換和文件打開
應用內購買和支付卡的預置
低級Unix功能;例如,BSD通知
iPad上的多場景
注冊自定義URL方案
請求用戶對應用程序的評論,使用StoreKit的requestReview(in:)方法
搜索已配對的藍牙設備

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM