2015-02-19 1 views
2

В моем приложении я хочу показать общий листок с Airdrop как единственный вариант.Поделиться через Airdrop только

В iOS7 я мог бы просто добавить все типы акций в собственность UIActivityViewController excludedActivityTypes (UIActivityTypeMessage, UIActivityTypeMail, ...)

Но теперь в iOS8 с расширениями приложений, пользователи могут иметь дополнительные провайдеров обмена, которые появляются , Есть ли способ показать Airdrop только?

 UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:@[[NSURL URLWithString:url]] 
                       applicationActivities:nil]; 

     NSArray *excludedActivities = @[UIActivityTypePostToTwitter, UIActivityTypePostToFacebook, 
             UIActivityTypePostToWeibo, 
             UIActivityTypeMessage, UIActivityTypeMail, 
             UIActivityTypePrint, UIActivityTypeCopyToPasteboard, 
             UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll, 
             UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr, 
             UIActivityTypePostToVimeo, UIActivityTypePostToTencentWeibo]; 

ответ

0

В настоящее время это невозможно. Вы должны указать enhancement request with apple, объяснив, почему это было бы полезно для пользователя/разработчика.

+0

ОК спасибо. Я хочу ограничить доступ к соседним пользователям –

0
class AirDropOnlyActivityItemSource : NSObject, UIActivityItemSource { 

    /// The item you want to send via AirDrop. 
    let item: AnyObject 

    init(item: AnyObject) { 
     self.item = item 
    } 

    func activityViewControllerPlaceholderItem(activityViewController: UIActivityViewController) -> AnyObject { 
     /// Use an empty URL as placeholder to let iOS Share Sheet show the AirDrop only. 
     return NSURL(string: "")! 
    } 

    func activityViewController(activityViewController: UIActivityViewController, itemForActivityType activityType: String) -> AnyObject? { 
     return item 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^