Hybrid app development platforms such as Cordova, Ionic, Xamarin, and React Native are an important part of the mobile app ecosystem. They provide for code consolidation across platforms that brings down the overall time to ship and maintain an app on both iOS and Android. Build once, ship fast!
However, one critical aspect of providing a great mobile app user experience is deep linking. Android and iOS each implement deep links differently, and hybrid app toolkits do not cover all the complications of setting up this important functionality on both platforms.
Two of the most important deep linking standards are Universal Links on iOS and App Links on Android. Universal Links were introduced by Apple in iOS 9 and have since been the only effective way of deep linking the user to the app if it is installed. Android App Links were introduced in Android 6.0 and work more or less in a similar fashion to Universal Links. You can read more about Universal Links here and App Links here.
Option 1: Manual Configuration
One way to enable deep links on both the platforms is to manually configure Universal Links using Xcode and App Links using Android Studio. But that will surely work against the goal of code consolidation, as you’d need to replicate deep link handling for each platform.
Option 2: Plugins
Some hybrid environments have plugins to automate deep linking configuration. However, even when these plugins work (they are often unsupported and out of date), they come with major caveats:
- You will need to manage and host your own AASA file for iOS.
- You will need to manage and host your own AssetLinks.json file for Android.
- Standalone plugins cannot support Deferred Deep Linking (deep links that work even if the app isn’t installed).
- Standalone plugins cannot give you analytics and attribution for your traffic, which is critical if you are trying to grow your app.
Option 3: Hosted Deep Links
Fortunately, there is a third option: hosted deep links from a platform like Branch. Branch supports all of the top hybrid app environments, meaning you can have both Universal Links and App Links configured with a simple setup that takes just a few minutes. In addition, you’ll get support for deferred deep linking, analytics for your traffic, and free support from real engineers. All you need to do is add the Branch SDK for your platform to your project, complete a few one-time configuration steps, and Branch will automatically take care of all the rest.
Branch is the quickest, easiest, most reliable way to configure deep linking in your app. Get started today!