2013-06-06 3 views
8

Wenn ich mein Xamarin.iOS-Projekt von Visual Studio aus debugge, baut es, installiert es auf dem Simulator und startet die App ohne Probleme. Aber beim Start sehe ich eine Menge Debug-Tracing von einer Methode, die nicht einmal mehr in meinem C# -Code existiert. Ich kann auch Haltepunkte für die Klasse setzen, von der ich die Methode entfernt habe, unter den gleichen Zeilennummern, wo diese Methode war, und ich werde die entfernte Methode in der Aufrufliste sehen, wenn der Debugger aufhört.Xamarin iOS Simulator mit altem Code

Ich habe Visual Studio geschlossen und wieder geöffnet, die Verbindung zum Mac-Build-Server zurückgesetzt, meine Lösung bereinigt und neu erstellt und die Lösungsausgabe manuell gelöscht. Auf dem Mac habe ich den Simulator geschlossen und wieder geöffnet und versucht, Inhalt und Einstellungen zurücksetzen, wodurch die App gelöscht wird. Aber die Situation besteht immer noch, selbst nach all dem. Kann ich etwas anderes auf dem Mac versuchen, um sicherzustellen, dass alle zwischengespeicherten Kopien des alten Codes gelöscht wurden?

Antwort

7

Löschen Sie in Ihrem Projektordner die Ordner bin und obj. Das funktioniert bei mir aber ist immer noch nervig.

+1

Dies ist am nächsten, was scheint für mich bisher funktioniert haben - manuell tun a Erstellen Sie das Projekt neu, nachdem Sie Änderungen vorgenommen haben. Ich habe auch bemerkt, dass, wenn Sie Projekt A ändern und Projekt B von Projekt A abhängt, ich A neu erstellen muss, dann B. –

+0

Ich habe das gleiche Problem, aber auf der Android-Seite, es läuft eindeutig alten Code obwohl Ich habe versucht, neu zu erstellen/reinigen/löschen bin/obj/xamarin Studio neu starten/meinen Computer neu starten. Was gibt?? – Justin

+0

Ich habe das gleiche Problem, gibt es eine andere Problemumgehung als das Löschen der bin und obj Ordner jedes Mal? –

2

Klicken Sie im iOS Simulator (auf dem Mac) im Hauptmenü auf "Inhalt und Einstellungen zurücksetzen".

+0

Danke, aber ich habe das schon ausprobiert ... aktualisierte Frage, um es tatsächlich zu sagen. –

+0

Scheint, dass Inhalt und Einstellungen zurücksetzen nur die momentan laufende Simulatorinstanz betrifft, zum Beispiel iPhone5, aber nicht die von iPhone6. –

+0

@PurpleLagoon: Das stimmt, jeder Simulator ist komplett getrennt. Siehe dies: http://StackOverflow.com/q/15365179/183422 –

1

gut funktionierte das mit meinem Android-Projekt von der gleichen Ausgabe leiden:

  1. Recht auf Android-Projekt klicken Sie dann auf „Eigenschaften“ wählen.
  2. Wählen Sie "Android-Optionen" und dann "Verpackung".
  3. Deaktivieren Sie die Optionen "Gemeinsame Laufzeit verwenden".

dann funktionierte es normalerweise

1

überprüfen Sie Ihren Configuration Manager (die Drop-down mit Debug, Freigabe usw.) und prüfen, ob alle Projekte gebaut werden. Es deaktiviert normalerweise alle Projekte, mit denen Sie arbeiten, aus unbekannten Gründen.

Dies bedeutet, dass es nicht alle Projekte neu erstellt und daher eine alte Version anzeigt.

Gemäß Ihrem Kommentar zum Neuerstellen jedes Projekts ist dies ein klassisches Zeichen dafür, dass Projekte nicht auf die Ausführung überprüft werden und warum Sie dies manuell tun müssen.

0

In meinem Fall hatte ich auf alle Architekturen ermöglichen:

  • Android Projekteigenschaften
  • Andrid Oprions
  • Abschnitt Anvanced Tab
  • alle Architekturen auswählen und den Wiederaufbau
1

Ich hatte ein ähnliches Problem (obwohl auf einem Android-Emulator).

Was nicht für mich arbeiten:

  • den Computer neu starten
  • Neustart Visual Studio
  • Löschen bin/obj Ordner
  • gehen in Configuration Manager (Debug/Release/Konfiguration Manager) und tickt alles dort - alles war markiert
  • Ändern der Version der App im Manifest

Was hat für mich funktioniert?

Die App vom Emulator deinstallieren und dann Debug erneut ausführen. Es war ein Android-Emulator, also habe ich deinstalliert, indem ich lange auf das App-Icon und Holidng geklickt habe, und dann auf "App deinstallieren" gezogen. Auf einem iOS-Simulator sollte es ähnlich sein.