2016-06-14 23 views
0

我有一个iOS应用程序,在此应用程序中,我想与社交媒体共享内容使用**UIActivityViewController**但我想限制它仅限于某些应用程序。如何将ios中的所有可共享应用列入白名单

我想白名单/排除所有可共享的选项,例如如果我只想要PinterestFacebook那么在列表中这两个选项应该只在那里。我知道有一个选项可以排除所有不需要的选项,但它不可行。目前我正在这样做。

UIActivityViewController *ActivityView = [[UIActivityViewController alloc] initWithActivityItems:<#postItems>          applicationActivities:Acts]; 

[ActivityView setExcludedActivityTypes: 
@[UIActivityTypeCopyToPasteboard, 
    UIActivityTypePostToTwitter, 
    UIActivityTypeSaveToCameraRoll, 
    UIActivityTypePostToWeibo]]; 

是否可以将白名单列出?如果是的话我怎么能实现它?

希望问题很清楚。提前致谢。

回答

0

UIActivity值的完整列表,并删除要共享的项目。将此代码放入其自己的方法中,将白名单作为参数。

static NSArray *activities = @[ ... list of all activities here ... ]; 

- (NSArray *)whitelist:(NSArray *)whitelist 
{ 
    NSMutableArray *mutableActivities = [activities mutableCopy]; 
    [mutableActivities removeObjectsInArray:whitelist]; 

    return [mutableActivities copy]; 
} 
+0

能否请您提供整体工作流程的代码,以及如何确定pinterest像没有内置UIActivity的应用程序。 – user2413621

+0

我不知道。 – Avi

相关问题