У меня есть код обмена, который отлично подходит для iOS 7, но с iOS 8 больше не работает.Обмен видео в Facebook на iOS 8
@IBAction func onShareButton(sender: UIButton) {
let movie = NSBundle.mainBundle().URLForResource("IMG_0564", withExtension: "mp4")!
let items = [movie]
let activity = UIActivityViewController(activityItems: items, applicationActivities: nil)
if activity.respondsToSelector("popoverPresentationController") {
activity.popoverPresentationController?.sourceView = sender
}
self.presentViewController(activity, animated: true, completion: nil)
}
Как я говорил, это не работает нормально в прошивке 7, но на прошивке 8, ролик больше не прикреплен к сообщению (или видимый на панели доли), когда я выбираю делиться Facebook , Все остальные варианты работы, Почта, Сохранить в Видео, AirDrop и т. Д., Похоже, работают нормально.
Я также попытался прохождения детали как AVAssets:
let items = [movie].map { AVAsset.assetWithURL($0) }
и NSData:
let items = [movie].map { NSData(contentsOfURL: $0) }
Ни один из которых имел никакого влияния на эту проблему.
Проблема также возникает, если я использую моральный эквивалент в Objective-C, это язык агностик.
В моем случае они уже являются файловыми адресами. Я пробовал это с ними, как в ресурсах приложений, так и в каталоге документов, это не имеет никакого значения. Основное различие, которое я вижу, это то, что я использую mp4, и вы используете .mov –
Обратите внимание, что все ожидаемые функции работают, за исключением Facebook. –