 Good evening, Geeks. Yeah, myself, I'm Ramu. Working as an architect with Imaginea. I'm here to share some of the insights that we learned while developing products and tools for some of our customers, not that the examples I show in the slides are representation of the customers. So this is the agenda that I want to cover today. I'll introduce you to the problem, and then what's the benefit of deep links, and what are the various scenarios in which you can apply deep links, and then give you with the conclusion, and what are the further resources that might interest you. To set the context now, yeah, how many of you are familiar with this screen? Where you got a mail from LinkedIn, and you click on it, you're taken to a web app where you're asked to sign in. And yeah, most of us sound familiar, right? We have LinkedIn app already signed in, but we land up here. And I'm sure many of us would have gone back to the home screen after this, right? So in the world of web, we are all used to moving from one link of one website to another link of another website seamlessly. Did you any time wonder why that is not possible in the world of apps on mobile? So that's what I call as a broken user experience on mobile, which obviously translates to a lot of potential business opportunity loss. So that's where I introduce deep linking as the bridge or the solution with which we can actually fix this broken link and then enhance the user experience. So technically, what deep linking is? Deep linking is all about tagging or linking any specific location of an app. And how you do that is with the URI as we do any web page. Today, there are no set standards, but typically we follow this URI scheme. So in a nutshell, what deep linking allows? So deep linking allows you to get the user back to your app from multiple sources. So be it you click a link on an SMS or an email or an ad or whatnot. Anywhere on the mobile, you're back to your app, which means that you are getting the user back to your app again and again from multiple sources. This is just a small glimpse of what are the possible scenarios. So when you're getting the user to your app from multiple scenarios, obviously the advantages are going to be manifold. Your experience has increased drastically. And the user engagement, the amount of time the user is going to spend on your app, shoots up drastically. And your app is going to be discovered again and again. So how many times you have users who have installed your apps on their phone and never bothered to visit your app? Deep linking helps there, what do you say? Very often. So if you're bringing your user again, it means that your monetary chances are high and your campaigns are more effective. So I've listed a lot of advantages. So if that motivates you enough, now let's understand how we are going to wire up deep linking or how it's going to work. So I'll split this working part of deep linking into two scenarios. One is like, how I can apply deep linking on the apps that are already installed on my phone? Versus, how I can apply deep linking on the apps that are yet to be installed? So you can apply deep linking in both the scenarios. So starting with the first use case where deep linking can be applied for installed apps. Okay, consider this use case. You have a lot of, I mean, you want to buy a product and since we are in DroidCon, I thought I'll try buying a Moto 360 watch, okay? And I went and then Googled for all the links. Then I got a list of all the search results and say I clicked the link and I'm landed up on this page where I have installed this app already. Now I'm given two options. Either I can continue shopping using a web app or I should download again. You got me. This experience isn't it suboptimal? Right. So now enter the scenario where the app has enabled Google app indexing, which is one means of deep linking. So down in the same search results, here Google is saying, Google search in fact, not Google. Google search is saying, hey, you can open this link with an app that is already available on your phone. You saw the magic Google in its search is able to figure out that an existing app on your phone can actually is, will be able to open the link. And the moment you click on it, you're taken to an app and the user is more happy now to land on this page and probably, I mean, if it's keen on, the conversion is going to be much more seamless. So, yeah, we are geeks, right? So now if we want to do that, how we are going to do that. So the first and fundamental step of enabling deep link starts from your app. So I should deep link my app. So all I have to do is, given you are right to each and every activity that I'm going to wire up in my app and then give a URI scheme. So once this URI scheme is declared in your app, you have to share it with Google, right? So that is where, when you are pushing your app onto Google Play Store, there's an option where you allow Google Play to actually crawl your app content. So you have to opt in for that. That means Google is going to crawl your app and then see what are all the activities that are there. Now, once that is done, you should connect your backend with the content in your app, right? So that step is done in two ways. One is updating your site map. So in your site map, you're going to tell for each and every page in your website, what's the corresponding app link? And it should follow this specific URI format for at least Google to determine that, okay, this particular page on the web is similar to the same activity, this activity on my app. So this is one way or the other way is, you go and then update each and every page of your website and in the header of that page, you say, hey, this is what is my URI for the app. So that way your Google bot is going to crawl your website, map it with the content in your app and when it's going to do a search, it's going to map both of it and then show you this result, where you can actually see the app in the Google search results. So if you think this is too many steps, yeah? Can we take the questions at the end? Yeah, it's just because it's a short talk. I'm reserving time, yeah. So if you think it is too much of steps to be actually done, we have a very simple method of again deep linking, okay? So let's get to that example. Okay, this is one more shopping site, okay? Which is called Locracy, where you again search for some watches, okay? And then you're thrown up with a Google result and you click on it, here, Android system detects, not the Google search. Android system detects that, hey, this link can be opened either again in the browser or there's an app that is installed on your phone which can handle the same URI. So isn't it easy and then the user will be happy to open the app, right? Because it's already right there and it's going to get a best experience. So doing this is a bit easy as compared with Google search. So all you have to do is deep link your app, which is like you just have to wire up each and every activity with the corresponding URI that maps to the same URI on your webpage. So here you don't need to actually tell Google search, yeah, do crawling and all this stuff because the URI schemes of your website and your app matches. And that's why you saw this dialogue saying that, hey, either it can be opened and the browser are in the app. So now that we have seen the implementation, do you want to see what's the advantages of deep linking? So apps that have enabled deep linking, yeah, apps that have enabled deep linking are actually getting, I mean, they got a jump of 2.5 times more than those apps which are not deep linked. So you can see this graph which also indicates those apps with deep links are actually users are spending more time here as compared with apps without deep links. Okay. So now let's get onto the second scenario where you can, how you can enable deep links for apps which are not yet installed, which where you are actually driving the user to go and then install your app. So this technique we call it as deferred deep linking. So many of the times we give promo codes to the users and then say, hey, this is a referral campaign, you go click this link, you're going to get a 25% discount or whatever. The moment you do that, you're directed to the Play Store or Google Play and then you download and then install the app, what do you see? Your home screen, the coupon is not there. So many of times would have faced this, right? And you're left for searching the coupon. Again, a bit of suboptimal user experience. What if I open the app and I'm able to see the coupon? So then the conversion and then the chance of the user redeeming the coupon increases many fold, right? And to see it exactly, this is what Airbnb has done. So if it is a normal download, they take you to the default homepage. But if it is from a referral campaign, the moment you open the app for the first time, all you get is, hey, you're going to get a discount of this much, do you want to sign up? That means the chances are more that the user is going to sign up in this process. So how we do this deferred deep linking? Again, with Google Play, you have something called as install referral parameter. So with every coupon link, you can send along with the Google Play link, you have to give an install referral parameter. And once the user installs this app, downloads the app from the Google Play, after installation is complete, Google Play is going to send you a broadcast with the install referral parameter. So along with this install parameter, you're going to get the coupon link. So you can handle in your app on receive of your broadcast receiver, say that, hey, because of this, I'm going to take you to this corresponding page. So you want more details about this? There's this github link where a guy has posted complete sample code as how this install referrer is going to work completely. So what magic has this done for Airbnb? It got 300% increase in user signups just because of this small change. And it got a 25% increase in bookings. So that's what deep linking does. So you make your customers happy, you get your users back to your app again and again. Yeah, so that's the advantage of deep linking. And on a concluding note, while I say deep linking is getting your users back to your app again and again, I just want to conclude with some of the points that you might have to take care of while implementing deep linking. So we are saying deep linking is about wiring up your backend and then your mobile app, right? So it means your mobile team and then backend team should probably be working very tightly. And there are a lot of open source deep linking frameworks available already. You might have to take a look at it. And since you're saying as an app, I'm going to support a lot of URLs. There should be a robust error handling that should be handled in your app. Otherwise, chances are that you might, there's no possibility that like a browser which can say for not for link not found, you probably have to wire that up. And in case you're using, releasing an app on multiple platforms, you probably have to check what is the best scheme for you to enable it on multiple platforms. Yeah, that's it. I'll leave the rest of the slides for you to actually go ahead and then see as what are the deep linking landscaping is all about. And there's a lot of startup ecosystem who are actually focusing a lot on deep links. So any one of them can be a good resource for you to start off with. Yeah, that's it guys for me. So in case you have any questions, yeah, you had some questions. So on that slide where you had that site map for the deep linking. Right. If you can quickly please open that. Yeah, exactly this one. So I'm assuming you mean LOC slash HTTP colon slash slash, because in site map you will have HTTP links. This one? Yes. No, this is the URI scheme of your app. It's typically for Google. We say if your app package name is com.example.android, the URI scheme starts with the scheme. If you can see the scheme of this is actually like this. You can see the scheme is starting with example and then the host is gizmos. So that is why we say the same thing. So this site map is my website site map? Yeah, you have to specify in your site map which page of your website and it has an alternate content on the mobile app at this URI. Okay, got it. Thank you. Yeah, I want to know if deep linking is only means that it's for Google, correct? Like, so deep linking means when someone search, like make a Google search result, like not any other, even not any other thing on browser. So the Google search result will only drive you to your app. No, I gave you another example, right? Where in respect to your Google search you can as well do deep linking. Where I told if you can map up, yeah, this example where the URI scheme is the same as your web page. Here Google doesn't come into play. Okay, so you're saying for any page? Yeah. Like any URI on any browser it will. Exactly. As long as your app is able to handle this URI, the same URI as your web page, then you're good to go. Okay, thanks. Please download the talk funnel app to ask some more questions to Ramu. So up next are the flash talks. Yeah, thanks a lot guys.