App che apre il browser standard invece del browser attivo

7

Supponiamo che tu abbia uno smartphone con due browser, DefaultBrowser e OtherBrowser .

  • Visita il webshop aprendo Otherbrowser e procedi attraverso i passaggi del carrello
  • Alla fine, vai da OtherBrowser a PaymentApp a pagare.
  • Dopo aver pagato, PaymentApp si chiude e apre l'URL di conferma in DefaultBrowser .

E l'ultimo passaggio è un problema. DefaultBrowser non ha la sessione giusta, OtherBrowser fa. Il PaymentApp fa come previsto, apre un'istanza del browser e il sistema operativo seleziona l'impostazione predefinita.

I strongmente preferisco non impostare una nuova sessione in DefaultBrowser e parametri di feedback (come order_id) perché voglio mantenerla il più sicura e trasparente possibile. Un altro aspetto negativo di questo è che la sessione reale è ancora attiva in OtherBrowser che potrebbe causare altri problemi o confusione.

Qualcuno ha una soluzione per questo? Non sto cercando un codice, ma sto cercando un concetto che possa risolverlo nel miglior modo possibile.

Alcune informazioni aggiuntive:

  • Non possediamo l'app. Posso contattarli, ma è un'app bancaria e io sono un semplice contadino.
  • Gli altri grandi negozi online hanno la stessa identica situazione.
  • Questo non è legato al marchio, Android / iOS (e probabilmente WinPhone) hanno questo problema.
  • Questo non è relativo alle app, abbiamo provato alcune app bancarie, tutte hanno questo esatto problema.
posta Martijn 28.06.2016 - 16:21
fonte

1 risposta

1

Sia su Android che su iOS, PaymentApp può aprire qualsiasi browser vogliate. Se è fatto per aprire sempre un browser predefinito, l'unico modo per forzare l'apertura di un altro browser è cambiare un browser predefinito (btw funziona solo su Android, non su iOS). Se hai il controllo su PaymentApp, puoi forzarlo ad aprire un altro browser. Su Android il meccanismo è chiamato "intenti" e "collegamenti profondi", su iOS è fatto tramite "schemi URL personalizzati" o "collegamenti universali".

Ogni browser ha un modo speciale per identificarsi (tramite un codice di una pagina Web) e un modo per aprirlo (da qualsiasi app nativa). Il modo in cui potrebbe funzionare è che il webshop identifichi il browser e trasmetta tali informazioni a PaymentApp. Successivamente PaymentApp deve utilizzare le informazioni per aprire un browser corretto.

Dato che non controlli la PaymentApp (e suppongo che a loro non importi la correzione per te), l'unica soluzione sarebbe informare il cliente del webshop che il metodo di pagamento scelto richiede Safari o Chrome e riaprire la pagina in quel browser invece (passando un ID di sessione).

Sono uno sviluppatore di software per browser Web mobile e questo è un problema noto per qualsiasi app browser di terze parti, specialmente su iOS, dove Safari usurpa il sistema.

Vedi documenti: link link

    
risposta data 21.08.2016 - 00:42
fonte

Leggi altre domande sui tag