vinu
vinu

Reputation: 63

Deep linking with Facebook

In my iphone application , i have a reqiurement post to facebook.When i click the same post from Facebook the host app should come up.When i searched here https://developers.facebook.com/docs/applinks/ios it requires some metadata to be added in my file. So i did it.

<meta property="al:ios:url" content="schemename://" />
<meta property="al:ios:app_store_id" content="app store id" />
<meta property="al:ios:app_name" content="Example App" />
<!-- Other headers -->

But it neither opening my app nor redirecting to itunes. Please suggest me what i did wrong here??

Upvotes: 0

Views: 2893

Answers (2)

Ray
Ray

Reputation: 91

There is also another work around to this. I discovered it by reverse engineering how Spotify manages deep linking. To see this - share a Spotify playlist on your feed. The Facebook iOS app will launch directly into the Spotify iOS app from the shared playlist.

Long story short - Facebook have enable this for Spotify. If you put this meta tag in:

<meta property="fb:app_id" content="174829003346">

then your deep links will magically work (that's the Spotify facebook app ID). I'm still trying to establish if this is due to a misconfigured app or if we're looking at a potential anti-trust case.

By the way - this isn't a workable solution. If your app (and thus URL scheme) isn't installed, the Spotify app will open in its place. It is, however, very interesting behaviour.

Upvotes: 1

Alex Bauer
Alex Bauer

Reputation: 13613

This is expected behavior in 2017.

The al:ios:url tag you are using is supposed to do this. Unfortunately, the functionality has been broken for over a year on iOS, and it is a known issue that Facebook has essentially written off as wontfix.

Facebook will now only deep link on iOS if al:web:should_fallback is set to false. This means if your app is not installed, the user will always be taken to the App Store page rather than your own website, even if you have specified al:web:url. Most savvy brands do not want a new user’s first experience to be the App or Play Store page and they are also not willing to sacrifice attribution data. Because of this, al:web:should_fallback is now almost universally set to false, which means there is currently no workable way to launch a third-party app directly from the newsfeed in the iOS Facebook app.

Things still work correctly in the Android Facebook app, but obviously this could change at any time. It's unfortunate Facebook hasn't been more transparent about the change to the iOS version, because there is quite a bit of confusion about it.

You can read more about details behind this issue here.

But there is a workaround.

Services like Branch.io (full disclosure: I am on the team) get around this by implementing a judicious combination of App Links, URI schemes, and iOS Universal Links. Essentially what you need to do is open a page in the webview and then have a button or other user-driven CTA event that launches the app from there. It's an extra step for the user, but currently the best workaround. If you just want to be able to post a link that goes into your app when it is installed and otherwise goes to a webpage (or the App/Play Store), then Branch links are definitely your simplest solution.

Branch link routing logic

Branch link routing logic

Upvotes: 0

Related Questions