iOS App Extension

1、File->New->Target中有Application Extension選項,實際開發(fā)中是起什么作用呢

2、應用場景:

2.1 愛奇藝的部分,是使用了 Today Extension,點擊可以launch起app(openUrl方式,其他Extension不具備該功能)

2.2 在系統(tǒng)照片app中,可以直接發(fā)送照片到微信,是使用了Share Extension

2.3 搜狗鍵盤使用了Custom Keyboard Extension等

3、原理:

3.1?應用程序擴展:允許您將自定義功能和內容擴展到應用程序之外,并在用戶與其他應用程序或系統(tǒng)交互時使其對用戶可用。

3.2 應用擴展的生命周期


3.3 應用擴展的通信方式(比如照片app中使用了微信擴展,那么照片app是Host app,微信是Containing app),App extension雖然不能獨立發(fā)布到app store,需要依附Containing app,但它是一個獨立的二進制文件,獨立的進程,運行時不依賴Containing app是否在運行

4、開發(fā)中的注意事項


5、開發(fā)中的建議

5.1 Using an Embedded Framework to Share Code(Containing app&App Extension)

5.2 Sharing Data with Your Containing App(App Groups)


5.3 Memory(應用擴展要注意性能,系統(tǒng)分配的資源相對較少,擴展程序內存占用過大容易被kill)

6、參考鏈接:https://developer.apple.com/library/archive/documentation/General/Conceptual/ExtensibilityPG/index.html#//apple_ref/doc/uid/TP40014214-CH20-SW1

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 1.什么是Extension? 擴展 (Extension) 是 iOS 8 和 OSX 10.10 加入的一個非...
    RogerHXJ閱讀 2,543評論 0 3
  • 前言 iOS定義了程序擴展供開發(fā)使用,可以解釋為一種用戶程序與系統(tǒng)程序的關聯(lián)。例如:共享,通知中心,鍵盤。 一、A...
    我的名字好長好長灬閱讀 3,758評論 1 1
  • 今天主要說下 Share Extension 網(wǎng)上有很多教程,自個也親自實現(xiàn)了一次! 一 、Extension的...
    SunnyLeong閱讀 2,596評論 1 3
  • iOS 10推出了很多新功能,其中有幾個高調的變化:通知欄更加實用,電話可以防騷擾,iMessage變得更加有趣和...
    joshualiyz閱讀 12,873評論 2 24
  • 需求 作出下圖效果(上半部分) 首先我們知道這是一種Today Extension,上圖是通過3DTouch觸按彈...
    小白進城閱讀 4,231評論 1 13

友情鏈接更多精彩內容