我尝试通过官方iOS SDK(上一版本)分享Facebook Open Graph Action,但现在几天,此操作返回错误,现在它已停止工作。 该应用程序通过了Facebook批准,包括操作和相关对象,这一切似乎都是正确的。
对象创建和分享操作
var funciones = [basicas, likeFbk, cambiarFondo], i = 0;
while (funciones[i]) {
funciones[i]();
i += 1;
}
并返回错误
// ############## OpenGraph - Arrive At a Marina
// Photo
var photoURL = ""
if let image = firstMarina.images.first {
photoURL = image.width1440
} else {
photoURL = "https://fbstatic-a.akamaihd.net/images/devsite/attachment_blank.png"
}
let photo = FBSDKSharePhoto(imageURL: NSURL(string: photoURL)!, userGenerated: false)
// Properties
let properties = [
"fb:app_id": "xxxxxxxxxxxxxxxxxxxxx",
"og:locale": NSLocale.preferredLanguages()[0].stringByReplacingOccurrencesOfString("-", withString: "_"),
"og:type": "smartsea:marina",
"og:title": firstMarina.name!.text,
"og:description": firstMarina.desc!.text,
"og:image": [photo],
"place:location:latitude": firstMarina.location!.lat,
"place:location:longitude": firstMarina.location!.lng
]
// Object
let object = FBSDKShareOpenGraphObject(properties: properties as [NSObject : AnyObject])
// Action
let action = FBSDKShareOpenGraphAction(type: "smartsea:arrive_at", object: object, key: "marina")
// Content
let content = FBSDKShareOpenGraphContent()
content.action = action
content.previewPropertyName = "marina"
// Share
FBSDKShareDialog.showFromViewController(self, withContent: content, delegate: self)
奇怪的是,错误URL是一个Facebook域,我没有直接分享这个URL。它似乎是在每次分享行动时产生的。
有什么想法吗? 谢谢!
答案 0 :(得分:3)
不幸的是我不能发表简单的评论,因此我必须将其作为“回答”发布。我找到了这篇文章。这是关于被阻止的URL,但不幸的是没有被阻止的'Facebook'URL。我希望它可以提供帮助。
http://www.technerves.com/2015/07/unblock-your-website-url-from-facebook.html
答案 1 :(得分:0)
由于App transport security,它可能会被阻止。应用程序传输安全性是iOS9中引入的新功能。 它阻止与不满足某些安全要求的服务器的连接,例如最小TLS版本等
请在info.plist中关闭ATS后再试一次。请参阅此link,其中显示了如何关闭ATS。