web-dev-qa-db-fra.com

Xamarin Forms Android L'application plante le débogage avec VS Android Emulator)

J'ai créé une application Xamarin Forms de base. Cela fonctionne bien contre le simulateur iOS.

Cependant, lorsque j'essaie de courir avec un VS Android Emulator (5.1in Marshmallow), il se bloque à chaque fois à l'ouverture. Même lorsque j'essaie de courir sans débogage. Voici l'erreur que je continue de voir:

01-14 16:22:10.290 D/Mono    ( 1366): AOT module 'mscorlib.dll.so' not found: dlopen failed: library "/data/app-lib/App3.Droid-2/libaot-mscorlib.dll.so" not found
01-14 16:22:10.290 D/Mono    ( 1366): AOT module '/Users/builder/data/lanes/2512/d3008455/source/monodroid/builds/install/mono-x86/lib/mono/aot-cache/x86/mscorlib.dll.so' not found: dlopen failed: library "/data/app-lib/App3.Droid-2/libaot-mscorlib.dll.so" not found
01-14 16:22:10.294 D/Mono    ( 1366): Unloading image data-0x9659b010 [0xb93d5940].

J'utilise VS2015 + Xamarin Forms 2.0 le plus récent et le meilleur.

Que se passe t-il ici?

30
aherrick

En bref:

1. Problème "Impossible de se connecter au débogueur" (l'application Android démarre et se ferme immédiatement, le débogage s'arrête):

  1. Fermez la fenêtre du simulateur Android pour arrêter la machine virtuelle.
  2. Démarrez le " Hyper-V Manager " (programme Microsoft pour gérer les machines virtuelles sous Windows, vous l'avez installé)
  3. Sélectionnez l'émulateur que vous essayez d'utiliser
  4. Faites un clic droit pour le menu contextuel, appuyez sur Paramètres
  5. Dans la boîte de dialogue des paramètres, développez Processeur
  6. Cliquez sur Compatibilité
  7. Dans le volet droit, cochez la case " Migrer vers un ordinateur physique avec une version de processeur différente "
  8. Démarrez le débogage dans Visual Studio pour redémarrer le simulateur

2. Le problème libaot-mscorlib.dll.so manquant:

Accédez aux propriétés du projet Android, cliquez sur l'onglet "Options Android" et désélectionnez "Utiliser le déploiement rapide".

Source: Correction de "impossible de se connecter au débogueur" lors du déploiement des applications Xamarin Forms dans Visual Studio Android Emulator (VS2015)

Ce problème ne semble se produire que sur la nouvelle génération de processeurs, ce qui explique pourquoi je ne l'ai jamais vu auparavant.

Cela se produit en raison d'une incompatibilité entre les images Android pour l'émulateur Visual Studio pour Android et les nouvelles générations de processeurs Intel à partir de l'année 2015).

Cette solution est également publiée ici: Visual studio Android ne démarrera pas complètement

MISE À JOUR 29 novembre 2017

Vous devriez vraiment envisager de passer aux émulateurs Android fournis par Google via Android Studio pour Windows. Plus récents Android niveaux d'API Android ( 24 et plus) ne sont disponibles que là-bas et Microsoft ne semble pas s'en soucier .

Malheureusement, nous ne prévoyons pas de publier les images Android après la version 4.4. Nous vous recommandons d'essayer l'émulateur Google ou GenyMotion pour les futures images du système d'exploitation Android Android.

92
Zverev Evgeniy