2014-04-04 12 views
10

Pubblicherò link a Facebook e Twitter per i link diretti nella mia app. Ho iniziato a testare su Facebook e il mio link funziona finché l'app Facebook è installata. Se non hanno installato l'app di Facebook, vengono semplicemente portati sul mio sito web.Deep Link Fallback

Qual è la procedura migliore per gestire il fallback se l'utente non ha installato l'app di Facebook o più in generale fa clic su un collegamento per la mia app e io li voglio sempre inviati nella mia app?

risposta

4

Ottima domanda. Piuttosto che condividere un link diretto che porta direttamente alla tua app, dovresti ospitare una pagina sul tuo sito Web con codice di fallback in Javascript. Quella pagina può aprire l'app direttamente o tornare all'App Store (piuttosto che al tuo sito web).

Ecco un esempio concreto della pagina che è necessario ospitare sul server e collegarsi a Facebook. Funziona anche per e-mail, social media, ecc. Semplicemente sostituisci in l'URI della tua app e nel collegamento App Store. Si noti che l'iframe funziona su un numero maggiore di browser.

<!DOCTYPE html> 
<html> 
    <body> 
     <script type="text/javascript"> 
      window.onload = function() { 
       // Deep link to your app goes here 
       document.getElementById("l").src = "my_app://"; 

       setTimeout(function() { 
        // Link to the App Store should go here -- only fires if deep link fails     
        window.location = "https://itunes.apple.com/us/app/my.app/id123456789?ls=1&mt=8"; 
       }, 500); 
      }; 
     </script> 
     <iframe id="l" width="1" height="1" style="visibility:hidden"></iframe> 
    </body> 
</html> 

Quindi, se l'utente ha installato la vostra applicazione, il legame con l'URI avrà successo e l'utente lascerà il browser prima che lo script per il reindirizzamento ad App Store può essere attivato. Se l'utente non ha la tua app, il reindirizzamento ha esito positivo (dopo un breve messaggio di errore).

Disclosure: Sono uno sviluppatore allo Branch Metrics e il codice sopra è parte della nostra soluzione a questo problema.