web-dev-qa-db-fra.com

Visual Studio 2017 studio affichant l'erreur 'Cette application est en mode pause' et lève une exception non gérée

Je développe une application Xamarin.Android. Chaque fois que j'essaie de télécharger un flux JSON, j'obtiens l'erreur "Votre application est entrée dans un état de pause, mais aucun code n'est affiché car tous les threads exécutaient du code externe"

Voici la capture d'écran de error  Here's the screenshot of error

  • Mon code de téléchargement de flux json

     string url = "http://xamdev.epizy.com/getData1.php";
    
     public async void downloadJsonFeedAsync(String url) {
        var httpClient = new HttpClient();
        Task<string> contentsTask = httpClient.GetStringAsync(url);
    
        // await! control returns to the caller and the task continues to run on another thread
        string content = await contentsTask;
        Console.Out.WriteLine("Response Body: \r\n {0}", content);
    
        //Convert string to JSON object
        result = Newtonsoft.Json.JsonConvert.DeserializeObject<RootObject> (content);
    
        //Update listview
        RunOnUiThread (() => {
            listView.Adapter = new CusotmListAdapter(this, result.posts);
            progress.Visibility = ViewStates.Gone;
        });
    }
    
  • j'ai une erreur sur cette ligne

    string content = wait contentsTask;

  • C'est mon json 

    { "des postes":[ { "id": "1", "url": "", "titre": "Convertir la parole en texte dans une application Android", "date": "2017-06-16 06:15:18", "contenu": "Convertir parole en texte Convertir parole en texte dans une application Android Convertir parole en texte dans une application Android" Application. dans une application Android ", "thumbnail": "http: \/\/stacktips.com \/wp-content \/uploads \/2017 \/01\/Speech-to-To-Text-in-Android-375x300.jpeg" } ] }

S'il vous plaît quelqu'un peut-il me dire ce qui ne va pas avec mon code? Merci d'avance ..

Voici mon code de service web php -

<?php 

if($_SERVER['REQUEST_METHOD']=='GET'){

    require_once('conn.php');

    $sql = "SELECT * FROM space";


    if ($result = mysqli_query($conn, $sql))
     {
      $resultArray = array();
      $tempArray = array();


       while($row = $result->fetch_object())
       {

         $tempArray = $row;
          array_Push($resultArray, $tempArray);
      }


    echo json_encode(array("result"=>$resultArray));
    }
        mysqli_close($conn);

     }
   ?>               
6
xamDev

Enfin, j'ai la réponse.

Le problème était avec mon serveur d'hébergement, la réponse du serveur avec des cookies. C'est pourquoi mon application Android ne parvient pas à analyser le JSON.

Merci pour l'aide.

0
xamDev

Je suis surpris mais pas la meilleure réponse postée pour cette question. Pour moi, les solutions ci-dessus ne fonctionnaient pas. Pour résoudre ce problème, je devais désactiver l'option suivante du menu de débogage.

Debug > Options > General > Uncheck "Enable Just My Code"

Pour plus de détails, consultez Microsoft msdn help.

9
Mayank Modi

Vous devriez recevoir des détails sur les exceptions et une pile d'appels, ce qui facilitera grandement vos efforts de débogage. Je pense que c'est un bug avec Xamarin sur VS2017 en ce moment.

2
Chad Magendanz

J'ai rencontré cette erreur et j'ai regardé dans la fenêtre de sortie après l'échec de l'application. Dans mon cas, j'avais une méthode dans une classe de modèle de vue avec une "tâche" appelée par le XMAL.

1
kcabral

Si cela aide quelqu'un:

L'onglet de sortie me donnait un message disant que la version de la DLL était incorrecte.

Le projet a fonctionné malgré tout, mais pour une raison quelconque, cette version de la DLL a forcé mon projet à passer en mode pause, j'ai supprimé la dll, utilisé une version précédente et maintenant, je peux déboguer sans problèmes.

0
DHLopez

Dans mon cas particulier, j'ai vérifié la fenêtre de sortie du débogage et elle a mentionné "Impossible de trouver ou d'ouvrir le fichier PDB". J'ai lu plus loin et une des solutions consistait à vérifier quelles références de variables statiques je faisais. J'avais une variable statique de chargement à partir de AppSettings et il faisait référence à une clé qui n'était pas présente dans le fichier app.Config. Je souhaite que le débogueur me dise directement la référence non trouvée ou quelque chose comme ça. Une fois que j'ai eu la clé de référence correcte, j'étais sur mon chemin. En espérant que cela aidera quelqu'un d'autre.

0
Nizar