Ios 仅通过空投共享
我想把空投作为我申请的唯一选择的股票表拿出来 在iOS 7中,我可以简单地将所有共享类型添加到Ios 仅通过空投共享,ios,uiactivityviewcontroller,airdrop,uiactivitytypeairdrop,Ios,Uiactivityviewcontroller,Airdrop,Uiactivitytypeairdrop,我想把空投作为我申请的唯一选择的股票表拿出来 在iOS 7中,我可以简单地将所有共享类型添加到UIActivityViewController的excludedActivityTypes属性中(UIActivityTypeMessage,UIActivityTypeMail,…) 但现在在iOS 8中,通过应用程序扩展,用户可能会有额外的共享提供商出现。 有没有办法只展示空投 目前这是不可能的。您应该提交一份文件,解释为什么这对用户/开发人员有用。Swift 4.2版本: class AirDr
UIActivityViewController
的excludedActivityTypes
属性中(UIActivityTypeMessage
,UIActivityTypeMail
,…)
但现在在iOS 8中,通过应用程序扩展,用户可能会有额外的共享提供商出现。
有没有办法只展示空投
目前这是不可能的。您应该提交一份文件,解释为什么这对用户/开发人员有用。Swift 4.2版本:
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
}
}
用法:
let itemSource = AirDropOnlyActivityItemSource(item: "test")
let activityVc = UIActivityViewController(activityItems: [itemSource], applicationActivities: nil)
如何添加另一个内置iOS应用程序?(例如:
消息
,照片
…)UIActivityViewController非常方便,但我希望以编程方式而不是手动方式发送文件。我希望myDeviceApp扫描所有启用空投的设备,获取每个设备的UUID,并同时或同步向所有设备发送图片或视频。这可能吗?我当前在两个内部函数上收到错误“Method not override any Method from the superclass”:(非常好用!
class AirDropOnlyActivityItemSource: NSObject, UIActivityItemSource {
///The item you want to send via AirDrop.
let item: Any
init(item: Any) {
self.item = item
}
func activityViewControllerPlaceholderItem(_ activityViewController: UIActivityViewController) -> Any {
//using NSURL here, since URL with an empty string would crash
return NSURL(string: "")!
}
func activityViewController(_ activityViewController: UIActivityViewController, itemForActivityType activityType: UIActivity.ActivityType?) -> Any? {
return item
}
}
let itemSource = AirDropOnlyActivityItemSource(item: "test")
let activityVc = UIActivityViewController(activityItems: [itemSource], applicationActivities: nil)