Deep linking at App Promotion Summit

Post on 23-Aug-2014

1,771 views 1 download

description

The slides of my speech at App Promotion Summit #APS2014 Can be used as a cookbook to build deep linking!

transcript

Deep linking

@AlexJubien

@AlexJubien

Pioneer of mobile development

2003 - 2007

Games

2003 - 2007

Games Apps

Deezer

2008 - 2012

(main competitor of Spotify)

Deezer Viadeo

2008 - 2012

(main competitor of Spotify) (main competitor of Linkedin)

ThinkMobileMobile Strategy Consulting

2010 at Deezer:Project ‘Url Handler’

The issue

Why does it happen?

HTTP URLs are not supported by apps / no standard format for URL in apps

Why does it happen?

HTTP URLs are not supported by apps / no standard format for URL in apps

=> Deep linking is the solution

What the hell is deep linking?

What the hell is deep linking?

A way to open an app directlyto a specific section or content,

thanks to a link

Example: specific adYour appAnother app

Ad2AppYour app

What Deep Linking allows:

Ad2App

SMS2App

Your app

StockApp : CLGC – 10%, wanna buy?

http://stockapp.com/12345

What Deep Linking allows:

Ad2App

SMS2App

QR2App

Your app

StockApp : CLGC – 10%, wanna buy?

http://stockapp.com/12345

What Deep Linking allows:

Ad2App

Email2App

SMS2App

QR2App

Your app

StockApp : CLGC – 10%, wanna buy?

http://stockapp.com/12345

What Deep Linking allows:

Ad2App

Web2App

Email2App

SMS2App

QR2App

Your app

StockApp : CLGC – 10%, wanna buy?

http://stockapp.com/12345

What Deep Linking allows:

Ad2App

Social2App

Web2App

Email2App

SMS2App

QR2App

Your app

StockApp : CLGC – 10%, wanna buy?

http://stockapp.com/12345

What Deep Linking allows:

What Deep Linking allows:

Ad2AppApp2App

Social2App

Web2App

Email2App

SMS2App

QR2App

Your app

StockApp : CLGC – 10%, wanna buy?

http://stockapp.com/12345

Deep Linking=

Everything2App

Leverage your digital marketing efforts also for your apps

How it works / Url Scheme

Url Scheme

A technical mechanism to launch an app, with parameters

myapp://myparameters?yy=zz

Url Scheme

A technical mechanism to launch an app, with parameters

myapp://myparameters?yy=zz

Ex.: fb://, skype://, deezer://, spotify://, …

Url Schemetwitter://user?screen_name=AlexJubien

QR Code made with

Issues

• Not a standard• Not multi-platform• Not a HTTP url / crappy fail when not

handled: • Desktop web browser• App is not installed• …

How it works / Flow

Click

Desktop web

Mobile?

Yes

No

Analyze User Agent

www.myDomain.com/content/xyz

App Store

App Installed

?

No

IOS / Android

?

Google Play

Android

iOS

Android URL Intent Filter

App Store

App Installed

?

Yes

No

IOS / Android

?

Google Play

IOS / Android

?

Android

iOS

Web redirectmyApp://content/xyz

iOS

Android

Focus: Social2App/ Growth Hacking

Viral mechanics

Production Consumption

Viral mechanics

Production Consumption

Features in product lead users to share contents on

social networks

Viral mechanics

Production Consumption

Features in product lead users to share contents on

social networks

Consumption of these contents generates

acquisition or retention(and thus more production)

=> Benefits both for users and for the digital service

Viral mechanics

Production Consumption

Features in product lead users to share contents on

social networks

Consumption of these contents generates

acquisition or retention(and thus more production)

Social2App

Download Deezer

Launch app

Social2App

AppStore

Download Deezer

Launch app

INSTALL

Sharings generates downloads

Social2App

AppStore

App

Download Deezer

Launch app

INSTALL

and re-engagement

Social2App

AppStore

App

Cookie used to record choice

Download Deezer

Launch app

INSTALL

iOS Smart App Banner

• Allows deep linking• But quite no publisher do

it right!• Not multi-platform• Can’t remember choice

Resources

Related frameworks / tools

(acquired by Yahoo!)

Do you really need them?=> at least, ensure your techies study them

APPURL

URX

Twitter App Card

• Proprietary mechanisms for rich media formats in their native apps

• Twitter doc

Google App IndexingSearch results on Android open app directly!

(doc)

Deferred Deep Linking

• Uses ad tracking technologies• Allows to open app directly to the right

content or section at 1st launch AFTER INSTALL

• Tapstream tech / Article

• Quixey / AppUrl:‘The Problem’ (part 1) – Article

• Quixey / AppUrl:‘The Solution’ (part 2) – Article

Some articles

• Quixey / AppUrl:‘The Problem’ (part 1) – Article

• Quixey / AppUrl:‘The Solution’ (part 2) – Article

• HasOffers: ‘Past, present and future of mobile marketing’ –

Article

• Facebook: ‘An industry standard for linking on mobile’ – Article

• AppTweak: ‘The future of deep linking from app to app’ – Article

Some articles

Recommendations

Simple and cheap

• Rely on your website (desktop or mobile)• Implement iOS Smart App banner (the

right way!)• Use intent filter on Android

Simple and cheap

• Rely on your website (desktop or mobile)• Implement iOS Smart App banner (the

right way!)• Use intent filter on Android• Suboptimal, many issues (UX, not flexible,

not suited for ads, bad tracking, …)• Costs on app side, quite no maintenance

Advanced

• Want to get big on mobile?=> Grab your techies and build your own deep linking routing platform!• Remember UX should prevail

Advanced

• Want to get big on mobile?=> Grab your techies and build your own deep linking routing platform!• Remember UX should prevail• Add support for FB App Links, Twitter App

Cards, Google App Indexing• Use these slides as your cookbook!

For your techies

Tricky points

• App has to be able to launch on any section or content

• Nicely handle what is supported… and what isn’t! (implement a fallback? – at least, track failures)

• Fragmentation and maintenance• Proper tracking is hard to build!• Particular case when app is uninstalled

Reco on URL Scheme

• AppURL recommends not using schemes like yelp, imdb or spotify. These schemes may look nice, but there's no system for avoiding naming conflicts with them.

• Instead, AppURL recommends you use your website's (sub)domain as your scheme.

Crappy tinkering

• To detect if app in installed from Javascript : http://stackoverflow.com/questions/1108693/is-it-possible-to-register

-a-httpdomain-based-url-scheme-for-iphone-apps-like/1109200#1109200

http://stackoverflow.com/questions/13044805/how-to-check-if-an-app-is-installed-from-a-web-page-on-an-iphone

http://jesseditson.com/clean-ish-mobile-web-deep-linking-for-ios-and-android

http://fokkezb.nl/2013/09/20/url-schemes-for-ios-and-android-2/

Various

• A directory of URLSchemes: http://handleopenurl.com/

• A proxy-standard for app to app communication / using part of an app in another one: http://x-callback-url.com/