Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 仅通过空投共享_Ios_Uiactivityviewcontroller_Airdrop_Uiactivitytypeairdrop - Fatal编程技术网

Ios 仅通过空投共享

Ios 仅通过空投共享,ios,uiactivityviewcontroller,airdrop,uiactivitytypeairdrop,Ios,Uiactivityviewcontroller,Airdrop,Uiactivitytypeairdrop,我想把空投作为我申请的唯一选择的股票表拿出来 在iOS 7中,我可以简单地将所有共享类型添加到UIActivityViewController的excludedActivityTypes属性中(UIActivityTypeMessage,UIActivityTypeMail,…) 但现在在iOS 8中,通过应用程序扩展,用户可能会有额外的共享提供商出现。 有没有办法只展示空投 目前这是不可能的。您应该提交一份文件,解释为什么这对用户/开发人员有用。Swift 4.2版本: class AirDr

我想把空投作为我申请的唯一选择的股票表拿出来

在iOS 7中,我可以简单地将所有共享类型添加到
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)