2009-06-22 8 views
0

Chaque fois que je débogue mon application AIR, il continue à suspendre à une certaine ligne de code ... il ne me donne pas une raison, il dit simplement Fil principal (Suspendu) Pas d'erreur, pas de point de rupture à cet endroit non plus. Si je commente le code de sorte que cette ligne ne s'exécute pas, elle fait exactement la même chose sur une ligne de code différente.Flex-AIR: Filetage principal (Suspendu) ..... POURQUOI?

Je n'ai aucune idée pourquoi .... Que dois-je faire?

Merci!

est ici la fonction qu'il se passe dans:

public function update(): void 
     { 
      dispatchEvent (new Event (EVENT_UPDATE_DOWNLOAD_STARTED)); 

      var request: URLRequest = new URLRequest (_newVersionUrl); 
      urlStream = new URLStream(); 
      updateFileData = new ByteArray(); 
      urlStream.addEventListener (Event.COMPLETE, streamDownloadComplete); 
      urlStream.addEventListener (ProgressEvent.PROGRESS, streamDownloadProgress); 
      urlStream.addEventListener (IOErrorEvent.IO_ERROR, versionCheckIOErrorHandler); 
      urlStream.load(request); 
     } 

c'est la ligne suspend le:

updateFileData = new ByteArray(); 

updateFileData est définie en dehors de la fonction comme ceci:

protected var updateFileData: ByteArray; 

Je devrais mentionner ... ce code est le code qui met à jour la version de air..coul Est-ce que cela suspendrait parce que son essayant de mettre à jour pendant qu'adl.exe?

Merci

+0

Affichage du code en charge peut nous aider à résoudre le problème. – Sev

+0

J'ai ajouté le code ... mais il n'y a pas d'erreur lors de la suspension ... il me semble qu'il agit comme s'il y avait un point de rupture, mais il n'y a pas de point bleu. –

+0

Voir maintenant son le faire dans la fonction suivante sur l'application .. Je n'ai encore rien changé ... le problème ne pouvait pas passer par magie à la fonction suivante ... c'est tellement frustrant! –

Répondre

0

pas 100% sûr, parce que vous n'êtes pas frapper l'erreur, mais - Cela pourrait être un problème parce que les docs causé disent que vous ne pouvez pas faire la mise à jour alors que dans le débogueur:

Lors du test d'un application en utilisant l'application AIR Debug Launcher (ADL), tente de mettre à jour l'application entraîne une exception IllegalOperationError .

Ceci provient du livedocs.

+0

Je pense que cela a à voir avec cela, j'ai changé le numéro de version de l'application sur laquelle je travaille pour être plus élevé que le numéro de version de la mise à jour, maintenant il n'essaie pas de mettre à jour. –

+0

Je pense que le gros test est - est-ce qu'il verrouille en dehors du débogueur? Si ce n'est pas le cas - alors je pense que vous avez certainement un problème avec la mise à jour sous le problème du débogueur. – Gabriel

+0

Lorsque je l'exporte en tant que .air et l'installe/l'exécute, il fonctionne correctement. Alors oui je pense que c'est le problème. –

1

Utilisez-vous FlexBuilder?

Si oui, vous êtes-vous assuré qu'il n'y a pas de point d'arrêt défini quelque part dans votre source SDK (je le fais parfois par erreur)?
Essayez de vérifier, via le profil de débogage (Fenêtre> Perspective> Débogage Flex), la vue Points d'arrêt pour voir s'il y a quelque chose que vous ne reconnaissez pas.

De même, lorsque vous êtes raccroché, essayez de parcourir le code (par exemple, en utilisant F5 ou F6) pour voir si cela vous aide à déterminer où le débogueur s'est arrêté.

+0

Oui J'utilise FB3, j'ai vérifié la perspective de débogage pour tous les points de rupture et je n'en ai vu aucun .. Je ne sais pas comment repérer les points de rupture autres que ces points bleus cependant. –

+0

Que se passe-t-il lorsque vous êtes "suspendu" et que vous appuyez ensuite sur F6 (pour passer au-dessus)? Est-ce que des fichiers s'ouvrent, ou votre vue change-t-elle, pour indiquer où le débogué pourrait être raccroché? En outre, l'onglet Déboguer affiche-t-il une trace de pile de n'importe quel type? –