2017-10-03 4 views
1

J'ai créé l'application Android Xamarin Forms. C'est une grande application avec beaucoup de paquets de nuget. Heure première étoile mon application était 5 sec. J'ai ajouté multidex dans mon application. Maintenant Temps première étoile mon application est 10 sec. L'utilisateur attendra-t-il cette fois? c'est marrant, pas de chance.Application Android (Xamarin Forms) avec multidex - démarrer si lent

J'ai essayé beaucoup d'options dans mon projet et ceci est multidex. J'en ai la preuve. C'est "xamarin evolve app". Ancienne version (printemps 2016) - ne pas utiliser multidex, temps de première charge 5 sec. Nouvelle version de l'application - utilisez multi-sites, temps de chargement initial = 10 sec.

Des idées? 10 secondes pour le départ est très long. J'ai vraiment besoin d'aide.

+0

Conseils généraux sur les temps de démarrage: https://blog.xamarin.com/5-ways-boost-xamarin-forms-app-startup-time/ – Joe

Répondre

1

Peut-être, votre classe d'application (ou une autre partie importante du démarrage de votre application) réside dans le fichier DEX secondaire. Vous pouvez déplacer le fichier principal DEX:

Xamarin.Android offre un moyen simple de passer outre la liste principale de DEX:

  1. Créer un nouveau fichier texte dans votre racine de l'application principale. (Nommez multidex.keep)

  2. Réglez le Build Action-MultiDexMainDexList

  3. Inclure toutes les classes que vous voulez sur la liste principale de Dex dans

Note: Il est toujours une bonne idée pour voir un précédent fichier multidex.keep dans votre dossier obj\Debug pour référence.

J'espère que cela aide!

Référence https://www.jon-douglas.com/2016/09/23/xamarin-android-multidex-keep/

+1

Merci. Je vais essayer. – FetFrumos