調(diào)用下面的方法即可實(shí)現(xiàn)系統(tǒng)分享功能

創(chuàng)新互聯(lián)建站是一家專(zhuān)業(yè)提供北安企業(yè)網(wǎng)站建設(shè),專(zhuān)注與網(wǎng)站設(shè)計(jì)制作、網(wǎng)站制作、成都h5網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為北安眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。
//分享
- (IBAction)RespostClick_Action:(id)sender {
UIImage* image = [UIImage imageNamed:@"icon_share.png"];
NSString *text = @"I found an Awesome application software! InstaDown";
//;ls=1mt=8
NSURL *urlToShare = [NSURL URLWithString:[NSString stringWithFormat:@";ls=1mt=8",[HHLADSManager getValueFromjsondata:@"appid"]]];
NSArray *activityItems = @[text,image,urlToShare];
UIActivityViewController *avc = [[UIActivityViewController alloc]initWithActivityItems:activityItems applicationActivities:nil];
[self presentViewController:avc animated:TRUE completion:nil];
// 選中分享類(lèi)型
[avc setCompletionWithItemsHandler:^(NSString * __nullable activityType, BOOL completed, NSArray * __nullable returnedItems, NSError * __nullable activityError){
// 顯示選中的分享類(lèi)型
NSLog(@"act type %@",activityType);
if (completed) {
NSLog(@"ok");
}else {
NSLog(@"no ok");
}
}];
UIPopoverPresentationController *popover = avc.popoverPresentationController;
if (popover) {
popover.sourceView = self.view;
popover.sourceRect = self.view.bounds;
popover.permittedArrowDirections = UIPopoverArrowDirectionUp;
}
}
在使用系統(tǒng)集成的時(shí)候,分享圖片到微信或QQ等平臺(tái),報(bào)錯(cuò)不支持該類(lèi)型的內(nèi)容
在分享的時(shí)候需要把UIimage格式的圖片轉(zhuǎn)換成NSData類(lèi)型的數(shù)據(jù)再分享就能成功了?
ios跨軟件分享是基于Share Extension和協(xié)議跳轉(zhuǎn)實(shí)現(xiàn)的,本篇中講主要講解Share Extension是如何創(chuàng)建的。
shareExtension蘋(píng)果在iOS8后開(kāi)放給用戶(hù)使用,俗稱(chēng)分享擴(kuò)展是應(yīng)用擴(kuò)展的一種(包括:分享擴(kuò)展,Today擴(kuò)展、Action擴(kuò)展、鍵盤(pán)擴(kuò)展等等),分享擴(kuò)展允許開(kāi)發(fā)者擴(kuò)展應(yīng)用的自定義功能和內(nèi)容,能夠讓用戶(hù)在使用其他app時(shí)使用該項(xiàng)功能。擴(kuò)展不是一個(gè)可以獨(dú)立使用的應(yīng)用,它必須依附在一個(gè)應(yīng)用上才能發(fā)揮作用,有點(diǎn)像一個(gè)動(dòng)態(tài)庫(kù),所有的app都可以使用,需要時(shí)系統(tǒng)會(huì)調(diào)用這個(gè)擴(kuò)展,臨時(shí)搭建一個(gè)環(huán)境來(lái)完成一些事情,完成后系統(tǒng)終止該擴(kuò)展的運(yùn)行。
1、打開(kāi)項(xiàng)目設(shè)置,在TARGETS側(cè)欄地下點(diǎn)擊“+”號(hào)來(lái)創(chuàng)建一個(gè)新的Target,如圖:
2、然后選擇”iOS” - “Application Extension” - “Share Extension”,點(diǎn)擊“Next”。如圖:
3、給擴(kuò)展起個(gè)名字,這里填寫(xiě)了“Share”,點(diǎn)擊“Finish”。如圖:
4、這時(shí)候會(huì)提示創(chuàng)建一個(gè)Scheme,點(diǎn)擊“Activate”。如圖:
那么,直到這里創(chuàng)建Share Extension的工作就算是完成了。接下來(lái)可以先進(jìn)行一下編譯運(yùn)行。這里跟做App開(kāi)發(fā)的時(shí)候會(huì)稍微有點(diǎn)不一樣。因?yàn)镋xtension是需要Host App(宿主應(yīng)用)來(lái)運(yùn)行的。所以,XCode中會(huì)彈出界面讓我們選擇一個(gè)iOS的App來(lái)運(yùn)行Extension。如圖:
這里我選擇了XCode建議的應(yīng)用Safari,然后點(diǎn)擊“Run”來(lái)進(jìn)行調(diào)試運(yùn)行。XCode會(huì)啟動(dòng)Safari,如圖:
能看到Safari中間的分享按鈕是灰色不可用的。別急,你還沒(méi)打開(kāi)一個(gè)網(wǎng)頁(yè)呢_。我們隨便點(diǎn)開(kāi)一個(gè)網(wǎng)頁(yè),可以看到分享按鈕變?yōu)榧せ顮顟B(tài)。點(diǎn)擊分享按鈕就會(huì)彈出分享菜單,如圖:
可以看到剛才建立的Share擴(kuò)展已經(jīng)顯示在面板上了,如果你沒(méi)有發(fā)現(xiàn)自己的擴(kuò)展,那么你可以將菜單滑動(dòng)到最右邊,在“更多”選項(xiàng)中激活自己的擴(kuò)展。如圖:
我們點(diǎn)擊自己創(chuàng)建的分享項(xiàng),其彈出一個(gè)分享窗口。如圖:
在iOS應(yīng)用內(nèi)將內(nèi)容分享到Facebook,可通過(guò)接入Facebook SDK實(shí)現(xiàn)。官方網(wǎng)站:
接入Facebook SDK這里不做介紹。
可分享的內(nèi)容為鏈接、圖片、視頻、多媒體(圖片+視頻),還可為分享的視頻添加話(huà)題。
每一種分享內(nèi)容都有對(duì)應(yīng)的shareContent類(lèi)型,并通過(guò)shareDialog分享到Facebook
分享內(nèi)容到WhatsApp,只能通過(guò)openURL和原生系統(tǒng)分享的方式,官方網(wǎng)站:
分享圖片只能使用iOS的系統(tǒng)分享,采用UIDocumentInteractionController
分享圖片通過(guò)存入相冊(cè)再分享
分享視頻到Instagram,必須通過(guò)相冊(cè)URL
在iOS應(yīng)用內(nèi)分享內(nèi)容到VK,由VKsdk支持,sdk支持分享鏈接、文字和圖片,通過(guò)VKShareDialogController進(jìn)行交互,官方網(wǎng)站:
而本地視頻只能通過(guò)系統(tǒng)原生分享的方式,傳入相冊(cè)視頻url進(jìn)行分享
文章標(biāo)題:包含ios開(kāi)發(fā)系統(tǒng)分享的詞條
標(biāo)題路徑:http://chinadenli.net/article24/phisce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、品牌網(wǎng)站設(shè)計(jì)、外貿(mào)建站、網(wǎng)站策劃、網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)