OGeek|极客世界-中国程序员成长平台

标题: ios - 将视频分享到什么应用程序而不显示 ActionSheet [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 19:19
标题: ios - 将视频分享到什么应用程序而不显示 ActionSheet

我需要将视频从我的应用程序分享到 WhatsApp。 我目前可以通过使用 UIActivityViewController 来做到这一点,但用户体验不好。

(用户按下“发送到 WhatsApp”按钮,然后必须在 UIActivityViewController 显示的操作表中选择 WhatsApp。

我知道可以打开 WhatsApp 应用程序并分享视频。 例如,应用程序 TuneMoji 做得很好:

我也想做同样的事情。

请不要告诉我看https://www.whatsapp.com/faq/en/iphone/23559013 ,或使用 UIDocumentInteractionController :我想避免向用户展示 ActionSheet。



Best Answer-推荐答案


在按钮操作上试试这个:

func sendVideo(videoName: String, senderView: UIView) {

       if UIApplication.sharedApplication().canOpenURL(NSURL(string: "whatsapp://app")!) {
        let savePath: String = NSBundle.mainBundle().pathForResource(videoName, ofType: "mov")!
       let documentInteractionController = UIDocumentInteractionController(URL: NSURL.fileURLWithPath(savePath))
        documentInteractionController.UTI = "net.whatsapp.movie"
        documentInteractionController.delegate = self
        documentInteractionController.presentOpenInMenuFromRect(CGRectMake(0, 0, 0, 0), inView: senderView, animated: true)
    }
    else {

        let alertController = UIAlertController(title: "Error occured", message: "WhatsApp is not installed on your device.", preferredStyle: .Alert)
        let defaultAction = UIAlertAction(title: "OK", style: .Default, handler: nil)
        alertController.addAction(defaultAction)
        presentViewController(alertController, animated: true, completion: nil)
    }
}

有关更多信息,您可以查看引用:https://www.whatsapp.com/faq/en/iphone/23559013

Be sure to include WhatsApp URL scheme in your application's Info.plist under LSApplicationQueriesSchemes key if you want to query presence of WhatsApp on user's iPhone using 'canOpenURL'

关于ios - 将视频分享到什么应用程序而不显示 ActionSheet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36472743/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4