iOS 实现系统原生分享

xiaoxiao2021-02-28  102

目前绝大多数App都会有分享功能,以便于用户推广,譬如shareSDK等第三方被广泛应用,但是却需要注册账号,集成sdk等一系列复杂操作,今天来给大家说一下系统原生的分享是怎么实现的?

话不多说, 直接上代码

- (void)shareAction { NSString *textToShare = @"发给我看看 笨蛋"; NSURL *urlToShare = [NSURL URLWithString:@"http://www.baidu.com"]; NSArray *activityItems = @[textToShare, urlToShare]; [self shareWithContentArray:activityItems]; } - (void)shareWithContentArray:(NSArray *)contentArray { UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:contentArray applicationActivities:nil]; // activityVC.excludedActivityTypes = @[UIActivityTypePostToFacebook,UIActivityTypePostToTwitter, UIActivityTypePostToWeibo,UIActivityTypeMessage,UIActivityTypeMail,UIActivityTypePostToTencentWeibo,UIActivityTypeAirDrop,UIActivityTypeOpenInIBooks]; activityVC.completionWithItemsHandler = ^(NSString *activityType,BOOL completed,NSArray *returnedItems,NSError *activityError) { NSLog(@"%@", activityType); if (completed) { // 确定分享 NSLog(@"分享成功"); } else { NSLog(@"分享失败"); } }; [self presentViewController:activityVC animated:YES completion:nil]; }

系统提供很多分享途径供大家选择, 如下

UIActivityTypePostToFacebook UIActivityTypePostToTwitter UIActivityTypePostToWeibo // SinaWeibo UIActivityTypeMessage UIActivityTypeMail UIActivityTypePrint UIActivityTypeCopyToPasteboard UIActivityTypeAssignToContact UIActivityTypeSaveToCameraRoll UIActivityTypeAddToReadingList UIActivityTypePostToFlickr UIActivityTypePostToVimeo UIActivityTypePostToTencentWeibo UIActivityTypeAirDrop UIActivityTypeOpenInIBooks

当然如果感觉系统分享界面不够美观也可以自定义界面,在此就不在多说了, 有兴趣的童鞋可以尝试下!

转载请注明原文地址: https://www.6miu.com/read-28883.html

最新回复(0)