2014-04-10 3 views
5

Ich habe einen Xcode-Arbeitsbereich mit Einheitentestzielen. Die Komponententests laufen im Simulator gut und laufen auch gut auf einem meiner Geräte (ein iPod touch der 4. Generation mit iOS 6). Jedoch auf zwei andere Geräte (ein iPad Air und eine 5. Generation iPod touch mit iOS 7), wenn ich versuche, Unit-Tests laufen zu lassen ich eine Benachrichtigung erhalten, sagen"Ein gültiges Bereitstellungsprofil für diese ausführbare Datei wurde nicht gefunden" Fehler beim Versuch, Komponententests auszuführen

A valid provisioning profile for this executable was not found 

ich dies nur erhalten, wenn Unit-Tests laufen. Wenn ich versuche, Run die App auf diesen Geräten, installiert und läuft gut.

ich überprüft habe, dass die (Entwickler) Provisioning-Profil festgelegt in dem Code Signing Build-Einstellungen für die App dieser Geräte enthält und dass sie paßt meine Entwickler Codesignaturidentität und die ID-App. Ich habe auch versucht, das Profil neu zu erstellen, neu herunterzuladen und neu zu installieren.

Wo soll ich hinschauen? Warum sollte das Bereitstellungsprofil für Test nicht gültig sein, wenn es für Run gültig ist?

Antwort

14

Ich lief in ähnliche Fehler bei der Installation der App auf iPhone 5 & iPhone 6. Die gleiche App installieren Sie ganz gut (mit Xcode 6). Aber es gab mir Fehler wie:
A valid provisioning profile for this executable was not found
Die Codesignierung und Profileinstellung waren gut und gültig. Ich habe verschiedene Möglichkeiten ausprobiert, aber die Leute haben mein Problem nicht gelöst. Wenn Sie auf das ähnliche Problem stoßen, wenn Sie versuchen, Ihre App auf dem iPhone 5 & oben zu starten, und die Fehlermeldung erhalten, hier ist, was Sie versuchen können:
1) Gehen Sie zur Apple Developer Website und fügen Sie das Gerät (iPhone 5/6) zur Entwicklungsgeräteliste;
2) Klicken Sie auf derselben Website auf Provisioning-Profil und laden Sie das Development Provisioning-Profil auf Ihren lokalen Computer herunter.
3) Gehen Sie zu Xcode -> Geräte, klicken Sie mit der rechten Maustaste auf das iPhone, auf dem Sie Ihre App ausführen möchten (Sie haben es auf der Apple Developer-Website in Ihre Entwicklungsgeräteliste aufgenommen);
Show Provisioning Profiles
4) Wählen Sie "Bereitstellungsprofile anzeigen". In einem Popup-Fenster werden die Profile für das Gerät angezeigt. Klicken Sie auf "+" und wählen Sie das Provisionierungsprofil aus, das Sie gerade heruntergeladen haben.
Das Profil wird für dieses Gerät installiert und Sie können jetzt loslegen.
Ich habe festgestellt, dass dieses Verfahren funktioniert, wenn Sie ein neues Telefon für die Entwicklung hinzufügen möchten.

+21

Auf meinem iPhone6 ​​iOS 8.1.3, wenn ich Schritt 4 mache, schließt der Dateiauswahldialog, aber kein Bereitstellungsprofil hinzugefügt. – everclear

+0

@us_david, wenn ich auf die Schaltfläche + klicke, aber ich kann kein Provisioning-Profil hinzufügen. –

0

Nach einer Mittagspause habe ich Folgendes herausgefunden: Die Bundle Loader Einstellung für das Unit-Test-Ziel bezog sich nicht auf das Anwendungsziel, das ich dachte. Es zeigte tatsächlich auf ein Ziel mit einem ungültigen Bereitstellungsprofil.

Es ist interessant, dass die Komponententests auch mit dem falschen Profil auf einem iOS 6-Gerät ausgeführt wurden. Ich denke, iOS 7 führt einige zusätzliche Verifizierungen durch.

Verwandte Themen