Wenn ich meine Anwendung auf El Capitan unter Verwendung von Xcode6.4 (Xcode7 ist derzeit keine Option) erstellt habe, werden alle Bilder / Symbole (außer der AppIcon) nicht angezeigt oder verstümmelt.
Wenn ich mir die Ausgabe des Asset Compilers anschaue, sieht es gut aus, aber es gibt zwei Ausgaben, von denen ich vermute, dass sie verwandt sein könnten, aber ich bin weit davon entfernt, sicher zu sein:
2015-10-02 12: 26: 53.569 ibtoold [28899: 273288] NSFileCoordinator tut nichts.
2015-10-02 12: 26: 54.906 ibtoold [28899: 276436] CoreUI (DEBUG): CSIGenerator mit 'LZFSE' Compression Coreui Version (362.000000)
Könnte es sein, dass die LZFSE-Komprimierung versagt, sodass Yosemite nicht korrekt dekomprimieren kann, und wenn ja, gibt es eine Möglichkeit, dies zu überschreiben?
Es gibt kein Problem, wenn die Anwendung auf El Capitan ausgeführt wird.
Irgendwelche Vorschläge sind sehr willkommen.
UPDATE: Diese Nachrichten werden an die Konsole ausgegeben, wenn die App auf Yosemite ausgeführt wird:
02.10.15 22.31.59.914 AppName [452]: - [CUIThemeRendition newImageFromCSIDataSlice: ofBitmap: usingColorspace:] Nicht unterstütztes Pixelformat in CSI wurde 36864
02.10.15 22.31.59.914 AppName [452]: Nicht erstelltes Bild kann nicht aus CSI-Bitmap-Daten erstellt werden.
Es scheint, sie hatten dieses Problem für iOS7 in Xcode Beta 3 hier
Aber es scheint merkwürdig, dass es plötzlich wieder auftaucht, und mein Ziel ist OS X.
UPDATE: Also habe ich auf Xcode7 aufgerüstet, und das ganze Problem ist verschwunden. Alle Bilder und Icons werden nun korrekt in El Capitan und Yosemite angezeigt.
Hintergrundinfo:
Jede Version von Xcode enthält einen eingebauten Simulator. Xcode 6.4 hat iOS Simulator 8.4. Xcode 7.1 hat iOS Simulator 9.1 usw. Diese Simulatoren haben Profile gespeichert in Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/CoreSimulator/Profiles/Runtimes
Wenn Sie zusätzliche Simulatoren installieren, werden diese über Xcode-Versionen verteilt und ihre Profile werden in /Library/Developer/CoreSimulator/Profiles/Runtimes
Wenn Sie also den iOS Simulator 9.0 von Xcode 7.1 installieren, wird das 9.0 Simulatorprofil in den freigegebenen Speicherort eingefügt. Wenn Sie den iOS Simulator 8.4 von Xcode 7.1 installieren, wird er auch hier eingefügt, da Xcode 7.1 nicht weiß, dass eine Kopie des iOS Simulator 8.4 in Xcode 6.4 versteckt ist.
Was also zu geschehen scheint, ist (für Xcode 6.4):
/Library/Developer/CoreSimulator/Profiles/Runtimes
und verwendet anscheinend das neueste, das es finden kann. Warum ist das nicht wirklich klar für mich, aber keine Menge Knobeln verursacht etwas anderes. Wenn Sie also Xcode 7.1.1 installiert haben und den 9.0-Simulator herunterladen, werden Sie Ihre Xcode 6.4-Installation unterbrechen, weil der 9.0-Simulator seine Laufzeitumgebung im Laufzeitbereich des freigegebenen Simulators installiert und Xcode 6.4 diese in einigen Anwendungen verwendet Fälle. Dies führt dazu, dass actool anscheinend alle PNGs, die es importiert, nicht ändert. In meinen Experimenten ist es in Ordnung, JPGs zu importieren. Andere lustige Nebeneffekte sind die Tatsache, dass der Versuch, Storyboards in Xcode 6.4 zu bearbeiten, zum Absturz von Xcode 6.4 führt.
Wenn Sie also sowohl Xcode 7.x als auch Xcode 6.4 benötigen, installieren Sie keine iOS 9.x-Simulatoren von den Xcode 7-Installationen.
Nach (teilweise) dem Rat von @drmaclach habe ich diese Schritte befolgt und die lästigen -[CUIThemeRendition ...]
-Fehler beseitigt (ich benutze Xcode 6.4 und Mac OS X 10.11.1)
iOS 9.0.simruntime
von /Library/Developer/CoreSimulator/Profiles/Runtimes
Ich hatte das gleiche Problem nach der Installation von XCode6.4. Ich habe es gewandelt, indem ich alle Bilder in .jpg für .xcassets katalogisiert habe.
Tags und Links osx-yosemite yosemite xcasset osx-elcapitan xcode6.4