xce*_*eph 11 sharing ios uiactivityviewcontroller ios8
我在我的应用程序中共享存在问题,我想知道我是否做错了,或者这可能是iOS8中的错误.
在我的应用程序中,我有能力共享文件,如果共享类型支持附加文件(例如电子邮件)的附件,否则它共享一个包含文件链接的字符串.
在创建共享活动时,我做了类似的事情(我已经大大简化了我自己的实现,但这只是一个例子):
-(void)showShareButtons:(BOOL)animated
{
NSString *textToShare = @"Foobar!";
NSURL *myWebsite = [NSURL URLWithString:@"http://www.stackoverflow.com/"];
NSString *localPath = [NSTemporaryDirectory() stringByAppendingPathComponent:"temp.foo"];
NSURL *localFile = [NSURL fileURLWithPath:localPath];
NSArray *objectsToShare = @[textToShare, myWebsite, localFile];
UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil];
NSArray *excludeActivities = nil;
activityVC.excludedActivityTypes = excludeActivities;
[m_viewController presentViewController:activityVC animated:YES completion:nil];
}
Run Code Online (Sandbox Code Playgroud)
在iOS7上,我收到"消息,邮件,推特和Facebook"选项进行共享,这正是我所期望的.
- 对于Mail和Message,它使用String,URL和本地文件
- 对于Twitter和Facebook,它只有字符串和URL,其中URL显示为正确的链接(未在消息中显示)
在iOS8上,我只收到消息和邮件选项,两者都与iOS7中的相同.
它似乎现在限制它共享支持每个项目的选项,而在它列出支持任何项目的项目之前.
构建信息:
两者都是在xCode6 Beta中构建的,部署目标目前设置为iOS7.0
iPhone 5(MD295C/A)上的iOS 8.0(12A4345d),4S(MD241C/A)上的7.1.2(11D257)
编辑:此外,如果我只设置一个选项,如字符串,则所有选项都可用.所以我能够在两者上共享这些(即,它们已启用)
实际上应该是其他方式,在 iOs8 中UIActivity会列出设备上安装的所有共享站点。initWithActivityItems:例如:Facebook、twitter、Vimeo 等,具体取决于您为方法发送的文件类型。
但在 iOs7 中,只有邮件、消息等会被列出UIActivity,其中 Facebook、Twitter、Vimeo 只有在您登录设备设置时才会列出。
| 归档时间: |
|
| 查看次数: |
4491 次 |
| 最近记录: |