7

I read that from iOS 9, Universal links are introduced. Please explain the different between Deep-linking and universal links. My objective is, a link will be sent in mail to customers. Let the mail says there is an offer for item A, and a link. On clicking the link

  1. If the app is installed then, open the app and launch specific screen showing item A
  2. If app is not installed then, download it from App Store and open it and launch specific screen showing item A

What if there is a user login feature?

If app is installed and user is not logged in then,

  1. open the app
  2. Launch login screen
  3. After login is success launch specific screen showing item A.

How can these be implemented? How the links are configured for these?

Abin Baby
  • 586
  • 6
  • 17

3 Answers3

8

As of iOS 9.2, released December 8th, 2015, Apple has sounded the death knell for URI scheme based redirects, the standard for deep linking for the last seven years. They’ve decided that Universal Links are the future.

Earlier in order to use a URI scheme, you have to manually handle the case of the app not being installed.The problem with this is that when the app is not installed, it shows a ‘Cannot Open Page’ error. I’m sure you’ve all seen it. It’s the bane of deep linking.We were able to bypass this in iOS 7 and iOS 8, but it is not possible now from iOS 9.

Get more details form this link

Arun Basil Issac
  • 275
  • 2
  • 10
2

To clarify, 'deep links' are simply links that, when clicked, cause your app to open directly to content. Universal Links are a type of deep link, as are URL scheme links, but neither is a perfectly bulletproof solution right now so to cover all edge cases, you'll want to implement both.

Fortunately Branch can handle all of that complexity behind the scenes so you don't have to worry about it! As mentioned in the answer above, the guide here will get you up and running with exactly the implementation you described!

Alex Bauer
  • 13,147
  • 1
  • 27
  • 44
  • @Agop too many to list in a StackOverflow answer (plus they are constantly changing). You can find an up-to-date list [here](https://dev.branch.io/getting-started/universal-app-links/support/ios/#appsbrowsers-that-support-universal-links) — downvote unwarranted – Alex Bauer Jan 23 '17 at 20:01
  • There are two simple edge cases. #1: Apps that use their own web view instead of triggering the web browser. Solution: Use an intermediate page that displays the same link after redirecting to an alternate subdomain. AKA a Deepview in Branch. #2: Links that use the same domain. Solution: Use an alternate subdomain for deep links. The only other edge case is specific to your Branch service: If you use the common bnc.lt domain with a completely custom path, you can't use universal links because there's no way to serve the correct `apple-app-site-association` file. – Agop Jan 23 '17 at 20:55
0

I found a usable link here . It gives step by step details about deep linking using Branch.io

Abin Baby
  • 586
  • 6
  • 17