We are developing an iOS application which has Facebook sharing functionality. Everything works fine except Applinks. We are generating url link “app pages” with specified content (including open graph meta tags) and we want this content to be directly displayed to the user in our iOS application.
The problem is that, although the Facebook iOS app does extract Applinks meta tags from shared links in most cases, when I was investigating it further, I found that Facebook is not able to fully process a link after it has been shared using the iOS Facebook sharing functionality.
When I force Facebook to scrape information from the link again, it is always successful! Nothing has changed, the server served the same content. This has led me to one workaround solution which involves forcing Facebook to update information every time link was shared. We would like to avoid sending repeated requests.
I found several posts with similar problems here on Stackoverflow but none of the solutions work for us. Shared links are publicly available and do not require a user to sign in. Same issues occur with secure or nonsecure access. Links lead to static pages (no javascript). Pages are quite small (less than 2KB).
UPDATED (Added example meta tags)
<!DOCTYPE html>
<html lang="en">
<head>
<title>Title</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta property="al:ios:url" content="appscheme://applink/rodjs2kd48">
<meta property="al:ios:app_store_id" content="123456">
<meta property="al:ios:app_name" content="AppName">
<meta property="al:web:url" content="https://example.com/rodjs2kd48">
<link rel="canonical" href="https://example.com/rodjs2kd48">
<meta property="og:url" content="https://example.com/rodjs2kd48">
<meta property="og:type" content="article">
<meta name="twitter:card" content="summary">
<meta property="og:title" content="Title">
<meta name="twitter:title" content="Title">
<meta property="og:image" content="http://example.com/image.jpg">
<meta name="twitter:image" content="http://example.com/image.jpg">
<meta property="og:description" content="Description">
<meta name="twitter:description" content="Description">
</head>
<body>
Some content
</body>
</html>