前言
??ios跨軟件分享是基于Share Extension和協(xié)議跳轉(zhuǎn)實(shí)現(xiàn)的及志,本篇中講主要講解Share Extension是如何創(chuàng)建的寨腔。
什么是Share Extension?
shareExtension蘋果在iOS8后開放給用戶使用,俗稱分享擴(kuò)展是應(yīng)用擴(kuò)展的一種(包括:分享擴(kuò)展迫卢,Today擴(kuò)展、Action擴(kuò)展乾蛤、鍵盤擴(kuò)展等等),分享擴(kuò)展允許開發(fā)者擴(kuò)展應(yīng)用的自定義功能和內(nèi)容家卖,能夠讓用戶在使用其他app時(shí)使用該項(xiàng)功能。擴(kuò)展不是一個(gè)可以獨(dú)立使用的應(yīng)用上荡,它必須依附在一個(gè)應(yīng)用上才能發(fā)揮作用,有點(diǎn)像一個(gè)動(dòng)態(tài)庫酪捡,所有的app都可以使用,需要時(shí)系統(tǒng)會(huì)調(diào)用這個(gè)擴(kuò)展沛善,臨時(shí)搭建一個(gè)環(huán)境來完成一些事情塞祈,完成后系統(tǒng)終止該擴(kuò)展的運(yùn)行帅涂。
Share Extension
- 注:擴(kuò)展不能單獨(dú)創(chuàng)建,必須依賴于應(yīng)用工程項(xiàng)目
創(chuàng)建Share Extension
1媳友、打開項(xiàng)目設(shè)置,在TARGETS側(cè)欄地下點(diǎn)擊“+”號(hào)來創(chuàng)建一個(gè)新的Target产捞,如圖:
2、然后選擇”iOS” -> “Application Extension” -> “Share Extension”焊唬,點(diǎn)擊“Next”看靠。如圖:
3、給擴(kuò)展起個(gè)名字挟炬,這里填寫了“Share”,點(diǎn)擊“Finish”谤祖。如圖:
4、這時(shí)候會(huì)提示創(chuàng)建一個(gè)Scheme粥喜,點(diǎn)擊“Activate”。如圖:
那么秕铛,直到這里創(chuàng)建Share Extension的工作就算是完成了。接下來可以先進(jìn)行一下編譯運(yùn)行但两。這里跟做App開發(fā)的時(shí)候會(huì)稍微有點(diǎn)不一樣。因?yàn)镋xtension是需要Host App(宿主應(yīng)用)來運(yùn)行的谨湘。所以芥丧,XCode中會(huì)彈出界面讓我們選擇一個(gè)iOS的App來運(yùn)行Extension。如圖:
這里我選擇了XCode建議的應(yīng)用Safari续担,然后點(diǎn)擊“Run”來進(jìn)行調(diào)試運(yùn)行。XCode會(huì)啟動(dòng)Safari物遇,如圖:
能看到Safari中間的分享按鈕是灰色不可用的憾儒。別急乃沙,你還沒打開一個(gè)網(wǎng)頁呢_。我們隨便點(diǎn)開一個(gè)網(wǎng)頁警儒,可以看到分享按鈕變?yōu)榧せ顮顟B(tài)训裆。點(diǎn)擊分享按鈕就會(huì)彈出分享菜單边琉,如圖:
可以看到剛才建立的Share擴(kuò)展已經(jīng)顯示在面板上了记劝,如果你沒有發(fā)現(xiàn)自己的擴(kuò)展,那么你可以將菜單滑動(dòng)到最右邊隆夯,在“更多”選項(xiàng)中激活自己的擴(kuò)展钳恕。如圖:
我們點(diǎn)擊自己創(chuàng)建的分享項(xiàng)蹄衷,其彈出一個(gè)分享窗口。如圖:
備注:如果在更多中沒有找到Share拓展睦番,有可能是創(chuàng)建的Share拓展版本太高,如下圖所示:
版本配置