本文目录一览:
- 1、iOS系统分享到自己app的实践
- 2、iOS调用系统分享功能
- 3、iOS分享到第三方应用方法整理
iOS系统分享到自己app的实践
这里主要讲利用分享扩展(share extension)实现系统分享到自己app的功能,扩展里面跳转宿主app,及数据传输等
创建成功会生成一个文件夹
info.plist 里面有激活扩展的规则,匹配规则会在系统分享里面出现自己的app。
NSExtensionActivationRule:默认为字符串“TRUEPREDICATE”,表示在分享菜单中一直显示该扩展。生产环境不可用,必须将类型改为Dictionary类型,然后添加以下字段:
默认分享扩展类ShareViewController,自带视图,可以全部自定义,这里不讲诉
购买苹果ID
跳转宿主app后在一下方法中处理逻辑
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionaryUIApplicationOpenURLOptionsKey,id *)options;
首先要配置相同的 App Groups,必须group.开头
NSUserDefaults *de = [[NSUserDefaults alloc]initWithSuiteName:@\”group.(跟上面app groups一致)\”];
[de setObject:value forKey:@\”key\”];
宿主app 获取数据
NSUserDefaults *de = [[NSUserDefaults alloc]initWithSuiteName:@\”group.(跟上面app groups一致)\”];
id value = [de objectForKey:@\”key\”];
扩展要选择对应宿主app运行,但扩展属于独立进程,调试的时候运行扩展,宿主app里面的断点不会走,同样运行宿主app,扩展里面的断点不会执行
iOS调用系统分享功能
调用下面的方法即可实现系统分享功能
//分享
– (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];
// 选中分享类型
[avc setCompletionWithItemsHandler:^(NSString * __nullable activityType, BOOL completed, NSArray * __nullable returnedItems, NSError * __nullable activityError){
// 显示选中的分享类型
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;
}
}
iOS分享到第三方应用方法整理
在iOS应用内将内容分享到Facebook,可通过接入Facebook SDK实现。官方网站:
接入Facebook SDK这里不做介绍。
可分享的内容为链接、图片、视频、多媒体(图片+视频),还可为分享的视频添加话题。
每一种分享内容都有对应的shareContent类型,并通过shareDialog分享到Facebook
分享内容到WhatsApp,只能通过openURL和原生系统分享的方式,官方网站:
分享图片只能使用iOS的系统分享,采用UIDocumentInteractionController
分享图片通过存入相册再分享
分享视频到Instagram,必须通过相册URL
在iOS应用内分享内容到VK,由VKsdk支持,sdk支持分享链接、文字和图片,通过VKShareDialogController进行交互,官方网站:
而本地视频只能通过系统原生分享的方式,传入相册视频url进行分享
关于ios苹果系统分享和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
评论(0)