Je vais essayer d'être clair dans mon problème. Je souhaite activer le partage Facebook dans mon application rapide (Swift 3). Lorsque l'utilisateur clique sur le lien sur facebook, il devrait être redirigé sur l'application (s'il en a) sur l'app store (s'il est sur iOS et n'a pas d'application) ou un autre site web pour un autre cas.FBSDKShareLinkContent imageUrl obsolète mais le lien de l'application facebook ne provoque pas l'image meta
Facebook est un outil simple à faire: App Liens: https://developers.facebook.com/docs/applinks
Alors je devais juste créer sur mon ios projet une classe FBSDKShareLinkContent
et lui donner l'url Applink, un titre, une description et une image :
let content:FBSDKShareLinkContent = FBSDKShareLinkContent()
content.contentURL = NSURL(string: linkURL)
content.contentTitle = nsTitle as! String
content.contentDescription = nsDesc as! String
content.imageURL = NSURL(string: imageURL)
Mais Facebook changer c'est moyen de partager du contenu. Les propriétés contentTitle
, contentDescription
et imageURL
sont maintenant en lecture seule et déconseillés:
/**
The URL of a picture to attach to this content.
- Returns: The network URL of an image
@deprecated `imageURL` is deprecated from Graph API 2.9.
For more information, see https://developers.facebook.com/docs/apps/changelog#v2_9_deprecations
*/
@available(*, deprecated, message: "`imageURL` is deprecated from Graph API 2.9")
open var imageURL: URL! { get }
maintenant facebook utilise metas du site contentURL
pour montrer l'image, le titre et la description. Le problème est que l'url donnée par lien facebook app Soen ne provite pas de données titre, la description ou l'image, voici le http Reponse:
<html>
<head>
<title>Mowwgli</title>
<meta property="fb:app_id" content="1786124768326289" />
<meta property="al:ios:url" content="mowwgli://" />
<meta property="al:ios:app_name" content="Mowwgli" />
<meta property="al:ios:app_store_id" content="1184953498" />
<meta property="al:web:should_fallback" content="false" />
<meta property="al:web:url" content="http://www.mowwgli.com/" />
<meta http-equiv="refresh" content="0;url=http://www.mowwgli.com/" />
</head>
</html>
Ensuite, le partage ne montre aucun titre d'image ou de la description:
J'ai été confronté au même problème. 1 jour avant tout fonctionnait bien, mais les 5-8 dernières heures, je suis confronté au même problème. – Harshadcse
J'ai trouvé la solution sur moi-même, voir la réponse juste en dessous de –