ios - titles - uinavigationbar




Einreichung von iOS-Apps: Fehlende 64-Bit-Unterstützung (8)

Ich habe gestern eine App zur Überprüfung gesendet, ohne Probleme. Dann wurde mir klar, dass ich ein kleines Problem lösen musste (Ändern der maximalen Zoomstufe einer Karte von 19 auf 18, sonst nichts), und ich entfernte die Binärdatei aus iTunes Connect und versuchte, sie erneut zu senden.

Jetzt habe ich diese Warnung:

Ich verstehe nicht warum, da meine Architekturen sind:

  • Architekturen: armv7
  • Gültige Architekturen: armv6, armv7, armv7s, arm64

Die App läuft gut im Simulator. Wenn ich versuche, die in der Warnung empfohlenen Standardarchitekturen (armv7, arm64) zu verwenden, wird die App nicht erstellt und ich erhalte Folgendes:

  • Undefinierte Symbole für die Architektur x86_64
  • ld: Symbol (e) für Architektur x86_64 nicht gefunden

Ich verwende die lib route-me und setze die gleichen Architektureinstellungen.


Ändern Sie Ihr iOS-Entwicklungsziel auf mindestens 5.1.1, oder löschen Sie alternativ die Standardarchitektureinstellung, und wenden Sie sie erneut an. Möglicherweise wurde eine Warnung angezeigt, dass arm64 nicht mit Ihrem Build-Ziel kompatibel ist. Überprüfen Sie auf der Übersichtsseite sowohl die Build- als auch die Zieleinstellungen für das "Bereitstellungsziel". In meinem Fall war das Ziel 6.0, aber das Projekt war 5.0.

Überprüfen Sie auch "Gültige Architekturen" sowohl in Ihrem Ziel als auch in Ihrem Projekt. Ich hatte die richtigen Einstellungen am Projekt, aber nicht am Ziel. Danach hat es bei mir geklappt.

Wechseln Sie auf der Übersichtsseite in der oberen linken Ecke der Box zwischen Projekt / Ziel.


Bitte aktivieren Sie die Option "Build Active Architecture". Stellen Sie es auf NEIN. Für mich geht das.


Heute löse ich dieses Problem mit den folgenden Schritten:

Gebäudeeinstellungen:

Architekturen: Standardarchitekturen (arm7, arm64) - $ (ARCH_STANDARD)

Gültige Architekturen: armv7 armv7s arm64

  1. Bereinigen und erstellen Sie Ihre App mit angeschlossenem iPhone
  2. Trennen Sie Ihr iPhone und überprüfen Sie die obere Leiste, wenn Sie sich in "iOS-Gerät" befinden
  3. Archiv
  4. Bestätigen und abschicken

Ich habe das Problem gelöst, indem ich

Architekturen: arm7, arm64

Gültige Architektur: arm7, arm64

Nur aktive Architektur erstellen: Ja


Okay, das war verrückt. Ich habe jede einzelne Antwort ausprobiert. Aber es hat nur funktioniert, wenn ich arm64 vor armv7 und armv7s in Valid Architectures platziert habe.

PS: xcode version : 7.2


Stellen Sie nach Bestätigung der korrekten Architekturen sicher, dass Ihr Gerät NICHT an Ihren Computer angeschlossen ist, wenn Sie den endgültigen Build ARCHIVIEREN, um ihn an den App Store zu senden.

Diese Warnung wird angezeigt, weil das von Ihnen angeschlossene Gerät wahrscheinlich nicht mit arm64 kompatibel ist.


Verwenden Sie " Standard architectures " wie folgt:

  • Architektur: "Standardarchitekturen" arm7, arm64
  • Gültige Architekturen: " arm64 ", armv7 ...
  • Nur aktive Architektur erstellen - NEIN (speziell, wenn Ihr angeschlossenes Gerät nicht mit arm64 kompatibel ist)

so was:

  • Darüber hinaus hilft es bekanntermaßen, Iphone und iPad vom Mac zu trennen, insbesondere wenn es sich um 32-Bit-Versionen handelt.

Wie Tony schrieb, ist es wichtig, diese Einstellungen in beiden Zeilen zu haben. Da mein (und natürlich auch Ihr) Projekt erstellt wurde, bevor arm64 zum Standard hinzugefügt wurde, wird es in "Gültige Architekturen" nicht berücksichtigt, auch wenn es als Standard angezeigt wird .

Was ich getan habe:

  • Ich ging zur Projekt- (vs. Ziel-) Konfiguration
  • In den gültigen Architekturen " arm64 " eingegeben (dies spiegelt sich automatisch in Zielen und Schemata wider

Nach der Bereinigung / Erstellung erhalte ich sogar einige Warnungen über die nicht ordnungsgemäße Konvertierung von float in CGFloat usw., sodass die Einstellungen offensichtlich zutrafen.

Die Validierungswarnung ist auch verschwunden!





arm64