wake-up-neo.com

Unerwarteter CFBundleExecutable-Schlüssel

Nachdem ich einige Zeit gegoogelt habe, sagt mir etwas, dass das Thema neu ist.

Wir hatten ein voll funktionsfähiges Projekt zur Unterstützung von iOS7-8. Natürlich wurde es mehrfach erfolgreich an AppStore übermittelt. 

Wir verwenden Pods, viel Tracking und Monitoring, wie GA und Instabug. 

Jetzt haben wir uns entschlossen, eine Version der App, die auf Xcode 7 unter iOS 9 basiert, bei TestFlight einzureichen.

Wir haben Bitcode deaktiviert, da viele Pods wie Flurry und andere vorgefertigte Bibliotheken ihn nicht enthalten.

Der Build war erfolgreich, nach der Übermittlung an iTunesConnect erhalten wir Folgendes:  enter image description here

Wir hatten dasselbe für die GoogleAppIndexing-Bibliothek (auch in Pods), aber wir haben sie entfernt, nur damit sie funktioniert. Jetzt - Instabug. Es geht zu weit, daher versuche ich zu verstehen, was in iOS 9 vor sich geht und welche Änderungen dazu geführt haben, dass ein vollständig funktionierendes Projekt solche Fehler auslöst.

Alle Gedanken und Ideen sind willkommen! Teilen Sie bitte Ihre Erfahrungen mit, und wenn ich etwas verpasst habe, teile ich gerne meine Schritte mit.

95
Dumoko

Ich habe heute das gleiche Problem mit der gleichen Fehlermeldung festgestellt, als ich versuche, unsere App zu übermitteln (mit Xcode 7 Beta 5), ​​aber anstelle des instabug.bundle-Bits war es für mich TencentOpenApi_IOS_Bundle.bundle.

Ich habe das Problem gelöst, indem ich das benannte Bundle im Projekt gefunden habe. Dann wurde - wie in der Fehlermeldung angegeben - der Info.plist im Bundle bearbeitet, indem der CFBundleExecutable-Schlüssel entfernt wurde. Die CFBundlePackageType-Taste war bereits auf BNDL eingestellt, sodass ich sie nicht anrührte.

Nach diesen Änderungen habe ich Product> Clean durchgeführt und hatte dann keine Probleme, die App an den App Store zu senden. 

Ich hoffe das hilft.

111
Sleiman

Dies wurde mit AviarySDK auf Xcode 7 GM festgestellt, während er an den App Store gesendet wurde.

Zuerst würde ich prüfen, ob Sie die neueste Version Ihrer Bibliothek verwenden - der Hersteller hat dies möglicherweise bereits behoben. Wenn Sie immer noch mit diesem Problem konfrontiert sind, müssen Sie, wie Sleiman beschreibt, den Schlüssel CFBundleExecutable aus der plist-Datei für die betreffende Bibliothek entfernen.

Cmd + Shift + O und geben Sie "Info.plist" ein. Dann finden Sie die entsprechende Datei:

 enter image description here

Wenn Sie die Plist bearbeitet haben, sehen Sie möglicherweise beschreibende Namen (anstelle von CFBundleExecutable und anderen Schlüsseln. Ich konnte diese Datei nicht in einem externen Editor bearbeiten. Daher musste ich durch Klicken mit der rechten Maustaste auf die Liste auf rohe Schlüssel/Werte umschalten :

 enter image description here

Nun sehen Sie den Schlüssel CFBundleExecutable (der eine Beschreibung der "ausführbaren Datei" enthält), den Sie löschen können.

Für AviarySDK habe ich dies zweimal gemacht, einmal für jeden Info.plist, der im obigen Bild zu sehen ist, und konnte dann erfolgreich einreichen.

52
Adam S

Ich löse dieses Problem wie folgt: Wir müssen alle "ausführbaren Dateien" der folgenden Pakete entfernen:

  • GooglePlus.bundle
  • GPPCommonSharedResources.bundle
  • GPPShareboxSharedResources.bundle

Stellen Sie sicher, dass "Bundle Type Code" gleich BNDL ist

Wichtig: Bearbeiten Sie nichts in der info.plist des Hauptprojekts.

Angehängte Bildschirme, wie sie seine "info.plist" sein sollen, werden über jedem Paket aufgelistet.

 enter image description here

 enter image description here

 enter image description here

Hier ist was für mich gearbeitet hat

  1. Apple-Shift-F, Suche nach CFBundleExecutable
  2. Klicken Sie auf jeden außer "PODS" oder Ihr Hauptziel
  3. Löschen Sie es (Schlüssel löschen)

 enter image description here

9

Wenn der Build über Kleiner als (<) Xcode 7.0 übergeben wird, wird er und auch .__ übergeben. Ich habe ihn folgendermaßen gelöst: Xcode 7:

Im Projekt-Navigator des Projekts nach info.plist gesucht, wie in der folgenden Abbildung:

 enter image description here

Öffnen Sie nun diese info.plist-Dateien nacheinander und löschen Sie den BundleExecutable-Schlüssel EXCEPT den info.plist des Ziels.

Jetzt das Projekt gesäubert und erreicht und es wird mit Kein Problem eingereicht.

5
Manab Kumar Mal

Ich hatte das gleiche Problem in der Google Maps-Bibliothek. Ich entfernte den CFBundleExecutable-Schlüssel in GMSCoreResources.bundle (Info.plist). Dies ist das saubere Projekt des SDK info.plist und wird in den Appstore hochgeladen. 

Viel Spaß beim Programmieren.

 enter image description here

4
Umar Farooq

Überprüfen Sie einfach Ihre Build-Einstellungen => Bitcode aktivieren und setzen Sie NEIN

1
InitialC

Wenn dieser Fehler in einer über CocoaPods installierten Bibliothek angezeigt wird, versuchen Sie es mit einem pod update <OFFENDING POD NAME> 

Das hat das Problem für mich gelöst.

0
Quentin

Noch ein Hinweis: Wenn Sie über zusätzliche Ziele verfügen, werden manchmal Zieleigenschaften angezeigt, die möglicherweise auch den Schlüssel enthalten (im Abschnitt "Info"). Überprüfen Sie diese also und entfernen Sie sie auch von dort. Ich entdeckte dies mit einem der Pakete, die ich einbinden wollte. Ich habe die Informationen aus der Liste gelöscht, den Fehler aber immer wieder angezeigt.

0
jimejim

Ich habe gerade Word "BNDL" an entsprechender Stelle in plist "Bundle Creator OS Type code" hinzugefügt.

That was the issue

0
Oleksiy Dudarev

In meinem Fall ziehe ich einfach die Datei SDK in den Ordner include info.plist, die nicht verwendet wird. Das ist das Problem für mich. Suchen Sie also die nicht verwendete info.plist-Datei und löschen Sie sie aus dem Quellcode.

0
Krunal Nagvadia