Entschuldigung, im Voraus für diese lange Frage, aber ich habe 3 Tage vergeblich vergeblich versucht, eine Xamarin.iOS-Entwicklungsumgebung einzurichten, die es mir ermöglicht, auf einem debuggen physisches Gerät (kein iPhone-Simulator) und ich weiß nicht, was ich als nächstes versuchen soll.Debuggen einer Xamarin.iOS App auf einem physischen iOS-Gerät
Ich glaube, mein Setup ist eine ziemlich Standard Xamarin Konfiguration:
- Windows-10-PC mit Visual Studio 2015 und Xamarin v4.2.0.703
- HTC Handy USB-verbunden mit dem PC für Android-Debugging (funktioniert gut)
- MacBook mit OS X 10.11 mit Xamarin Studio v6.1.1 und Xcode v8.0
- iPhone oder iPad USB-verbunden mit dem Mac für iOS Debuggen
Ich begann mit der Erstellung einer Xamarin-Lösung in Visual Studio, die ich ursprünglich auf Android entwickelt und debuggt hatte.
Um zum iOS-Debugging zu gelangen, habe ich dann den Mac mit Xcode und Xamarin Studio eingerichtet, für die Remote-Anmeldung aktiviert und ein Dummy-Xcode-Projekt mit der gleichen Paketkennung wie meine Xamarin.iOS-App erstellt. Ich habe auch versucht, den recht komplizierten Prozess des Erstellens eines Signaturidentitäts- und Bereitstellungsprofils für die App und des Herunterladens/Installierens auf dem Mac durchzuführen. Dieser Prozess ist so unintuitiv (und das visuelle Feedback in Xcode ist so schlecht), dass ich nicht sicher bin, ob ich es richtig gemacht habe. Allerdings kann ich das Dummy-Xcode-Projekt auf dem iPhone ausführen, also nehme ich an, dass es in Ordnung sein muss?
auf dem Windows-PC, die Xamarin>iOS Optionen Fenster in Visual Studio-Einstellungen bestätigt, dass Visual Studio auf den Mac und dem angeschlossenen iPhone auch als Kandidat Zielgerät aufgeführt verbunden ist, so ist es, dass alles scheint ist für das Debugging auf dem Gerät eingerichtet.
Wenn ich versuche, die App auf dem iPhone-Simulator von Visual Studio zu debuggen, funktioniert es korrekt. Doch das Debuggen auf dem physischen iPhone schlägt mit dem folgenden nicht hilfreich Nachricht:
Xamarin.Messaging.Exceptions.MonotouchException: error MT1006: Could not install the
application '/Users/Tim/Library/Caches/Xamarin/mtbs/builds/Test.iOS/c4f40041b6c58fc579a727bccfc18614/bin/iPhoneSimulator/Debug/TestiOS.app'
on the device 'Tim’s iPhone': AMDeviceSecureInstallApplicationBundle returned: 0xe8008001.
Als Vergleich habe ich versucht, auch direkt auf dem Mac Debuggen Xamarin Studio. Auch hier funktioniert der iPhone-Simulator zwar einwandfrei, aber es ist sogar unmöglich, eine Debug-Sitzung mit dem physischen Gerät zu starten, da das angeschlossene iPhone nicht als Kandidatenzielgerät für das Debug | aufgeführt ist iPhone Konfiguration.
Wenn ich Projektoptionen öffnen und navigieren Sie zu der iOS Debug Ansicht, kann ich sehen, dass die Plattform im Zusammenhang mit der Debug Konfiguration ist iPhoneSimulator. Ändern Sie es in iPhone und Speichern der Konfiguration scheint es funktioniert, aber die Änderungen werden nicht tatsächlich gespeichert. Ich denke, das ist der Grund, warum mein Testgerät nicht aufgeführt ist, aber ich bin nicht sicher, was ich tun muss, um Xamarin Studio dazu zu bringen, meine Änderungen zu akzeptieren.
Also, nach all diesen Experimenten bin ich völlig verloren. Es wäre hilfreich, ein komplettes, robustes A-Z-Tutorial für diesen Setup-Prozess zu haben, aber ansonsten würden Vorschläge, was ich als nächstes versuchen sollte, sehr geschätzt werden.
UPDATE: Wenn ich die Projektkonfiguration Ad-Hoc (in Visual Studio oder Xamarin Studio) verwende, wird die App auf dem Gerät ordnungsgemäß ausgeführt und gestartet, der Debugger wird jedoch nicht angehängt. Wenn ich das Debuggen explizit in der Ad-Hoc-Projektkonfiguration aktiviere, ignoriert Xamarin Studio es, aber Visual Studio hängt den Debugger an, trifft aber keine Haltepunkte. Klingt das alles richtig? Bietet es irgendwelche Hinweise, was ich ändern muss, um die echte Debug Config korrekt zu funktionieren?
Es klingt nicht so, als hätten Sie Ihr iPhone/iPad bereitgestellt: https://developer.xamarin.com/guides/ios/getting_started/installation/device_provisioning/ – SushiHangover
@SushiHangover: Danke. Mit Xcode> Fenster> Geräte habe ich gerade überprüft, dass auf dem iPhone ein Provisioning-Profil installiert ist. Ich überprüfte das installierte Profil in meinem Apple-Konto und es enthält meine Entwickler-ID und listet 3 Geräte auf, von denen das iPhone ist, auf dem ich versuche zu debuggen. –
Seltsam .... Wir haben einen Stapel von Androids, die nicht mit Xamarins Debugger funktionieren (aber mit A.S.), aber nie ein iOS-Problem hatten, wenn sie bereitgestellt werden. Welche iOS Versionen sind auf den iDevices (10?)? – SushiHangover