Il arrive parfois qu'un double splashscreen se lance lors de l'envoi d'un rich push ayant pour deeplink un URL scheme. 

Voici la solution technique généralement proposée afin de répondre à votre problématique :


  • Les url schémas (intent-filter) sont gérés par votre SplashScreen
  • Le SplashScreen intègre le SDK
  • Locker uniquement l'affichage des in-apps sur votre SplashScreen (au sein de la méthode onCreate) : getA4S().setInAppDisplayLocked(true);
  • Votre SplashScreen doit détecter qu'il a été lancé par un push Accengage et dans ce cas : n'effectuer aucune action (il ne doit même pas se fermer).


Dans la méthode onResume(), vous pouvez utiliser ce code par exemple :


Bundle bundle = getIntent().getExtras();
//

  • Nous récupérons alors le payload car vous pourriez avoir envie de traiter des customs params à ce niveau.


Bundle payload = bundle.getBundle(Constants.EXTRA_GCM_PAYLOAD);
if(payload == null) {
}
getA4S().startActivity(this);


  • Votre SplashScreen doit être en launchMode singleTask ou singleTop afin de ne pas se relancer lors du lancement de l'URL Schéma par le SDK
  • Délocker les in-apps sur l'activité de destination

 

Si cette réponse ne résout pas votre problématique, n'hésitez pas à nous contacter via notre formulaire.