Facebook App Universal Links not working

I have set up my universal links and they work with email, sms, facebook website, and twitter. However, when tapping on a post inside the Facebook iOS app, the FB app displays a “ERROR The request could not be satisfied” screen. It will not redirect into my app. The weird thing is that if i then exit the FB app and tap on my app, the branch data will be passed in. I have tried multiple things for over a day; i set up the fb.me redirect link, which will open my app, but won’t pass any data as well as various configurations for the BranchUniversalObject and BranchLinkProperties.  I am currently using the “showShareSheetWithLinkProperties” method, but i even tried handling the created link myself and that didn’t work either.

Hustle Fitness Inc — Developer
15 Answer(s)
Answered on June 13, 2016.

Hi Andrew!

Facebook is currently blocking basically all options for launching external apps (including via Universal Links) directly from the Facebook app. As you’re seeing, it’s really frustrating and definitely not user friendly. Branch’s recommendation at the moment is to enable the Deepviews feature, because we CAN trigger a Universal Link once the Facebook webview is open.

That said, the “ERROR The request could not be satisfied” screen sounds unusual. I downloaded the Hustle app and tried opening a link through Facebook but didn’t see this error. Could you post a screenshot?

Branch — Developer
Answered on June 13, 2016.

The current version that is in the store is not using the branch links.

I’ve attached screen shots below. But just knowing that Facebook is blocking stuff makes me feel better. I was starting to go crazy! 🙂

I will try using the Deepviews and see if that helps.

Have you, at Branch, heard anything from apple about Universal Links being fixed up for iOS 10?

RE: Facebook App Universal Links not workingWhen tapping a branch link

RE: Facebook App Universal Links not workingI can open it in my app by tapping on the More button...

Hustle Fitness Inc — Developer
Answered on June 14, 2016.

Hi Andrew,

Thanks for the screenshots. Could I also get an example URL that is causing this error when opened on Facebook?

We were watching the WWDC keynote this morning, hoping for some Universal Link news…but nothing yet. Maybe there will be some announcements as the week goes on!

Branch — Developer
Answered on June 14, 2016.

I grabbed this from my Branch dashboard

bnc.lt/y03m/oCtWOGqSau

channel
facebook

id

270897620690532130

DATA:
{ “$identity_id”: “270890309905397183”, “~id”: “270897620690532130”, “$og_title”: “\”Slow Step Cross\” on Hustle”, “~feature”: “sharing”, “$ios_url”: “itunes.apple.com/us/app/apple-store/id%@?mt=8”, “+url”: “bnc.lt/y03m/oCtWOGqSau”, “$one_time_use”: false, “$canonical_identifier”: “/api/drills/150”, “$publicly_indexable”: 1, “passed_drill_id”: “150”, “~channel”: “facebook”, “$og_description”: “Hustle provides basketball skills development drills for players who want to reach their full potential and the coaches who want to help them get there.”, “$exp_date”: 0, “~creation_source”: 3, “$og_image_url”: “http://img.youtube.com/vi/sU2wo-e8bAc/hqdefault.jpg”, “passed_drill_url”: “/api/drills/150”, “tabNumber”: “0” }

 

Hustle Fitness Inc — Developer
Answered on June 14, 2016.

I see what you mean, and deepviews doesn’t seem to be solving this issue!

Apple caused some issues with the iOS 9.3.1 update and we have started transitioning everyone away from the bnc.lt link domain (which your app is using). I suspect this may somehow be related, because apps that were inactive for a while got automatically purged to meet Apple’s new iOS 9.3.1 requirements. We have a couple of options:

  1. I can forward this along to our support team and they can investigate what’s going on with your bnc.lt links.
  2. Since your app doesn’t actually have any Branch links out in the wild yet, you can switch to our new [you].app.link domain. It appears that hustle.app.link is open, which would be a great match. I suspect this will resolve the issues you’re seeing, while also giving you much nicer links to use.

What do you think?

PS, I notice an issue with your string interpolation on the $ios_url parameter. Might be worth looking into what’s happening there!

 

Branch — Developer
Answered on June 14, 2016.

I’m all for switching to the hustle.app.link domain…

i don’t see a way that I can do that in the dashboard…the Custom Link Domain section won’t let me change it.

Is that something that you guys will do or should i add that as “enable custom domain” checkbox?

Hustle Fitness Inc — Developer
Answered on June 14, 2016.

We have to do that through the back end for existing apps, because it is technically a breaking change. Since your links are broken anyway, it’s less of a problem :).

I’ll get the process started over here

Branch — Developer
Answered on June 14, 2016.

Great!

Thanks so much for the assist 🙂

Hustle Fitness Inc — Developer
Answered on June 14, 2016.

Oh! I just found the root issue here: your $ios_url fallback is missing https://. Our backend doesn’t know what to do with https://bnc.lt/y03m/itunes.apple.com/us/app/apple-store/id%@?mt=8, which is what this resolves to when missing the protocol prefix.

If you add https:// to the beginning of the iOS redirect, the issues will be resolved. Given that, would you still like to go with hustle.app.link? There will some minor minor changes (~5 minutes) to make in your Xcode entitlements.

Branch — Developer
Answered on June 14, 2016.

lets go ahead and make the change to hustle.app.link.

That way we will be more up to date for the future…plus the link looks cooler 🙂

Hustle Fitness Inc — Developer
Answered on June 14, 2016.

Sounds great! I’ve submitted the request and will update here when it’s all set.

Branch — Developer
Answered on June 16, 2016.

You’re live on hustle.app.link! Let me know if you have any further questions 🙂

Branch — Developer
Answered on June 17, 2016.

Thanks!

Hustle Fitness Inc — Developer
Answered on June 20, 2016.

Hello again…

so i have integrated the new hustle.app.link

branch links work in SMS, and Facebook posts will now only open up to the Appstore; it never recognizes that the app is installed or running in the background.

I even copied the link from facebook and texted it to myself and it opens the app from Messages app

LINK ID: 273551055088941531

DATA: { “~creation_source”: 3, “passed_drill_id”: “1554”, “$identity_id”: “273547897809807354”, “passed_drill_url”: “/api/drills/1554”, “$og_description”: “Hustle provides basketball skills development drills for players who want to reach their full potential and the coaches who want to help them get there.”, “$og_image_url”: “http://img.youtube.com/vi/frXZTn0EVCo/hqdefault.jpg”, “$canonical_identifier”: “/api/drills/1554”, “$publicly_indexable”: 1, “$one_time_use”: false, “$exp_date”: 0, “$og_title”: “\”Slideboard Walk out Push Up\” on Hustle”, “~id”: “273551055088941531”, “tabNumber”: “0”, “~channel”: “facebook”, “+url”: “hustle.app.link/D7LYfTT1mu” }

URL: hustle.app.link/D7LYfTT1mu

Hustle Fitness Inc — Developer
Answered on June 20, 2016.

Hi! Glad to hear you’ve got the new domain all set up.

This actually goes back to an earlier response: Facebook is currently blocking basically all options for launching external apps (including via Universal Links) directly from the Facebook app. As you’re seeing, it’s really frustrating and definitely not user friendly. Branch’s recommendation at the moment is to enable the Deepviews feature, because we CAN trigger a Universal Link once the Facebook webview is open.

It’s not ideal, and we were disappointed to see that iOS 10 doesn’t appear to be fixing this, but it’s currently the best workaround.

Branch — Developer