iPad: PNG Crush-Fehler

73

Ich versuche, mein iPad-Projekt auf das neueste iPad 2 zu portieren. Ich habe das iOS 4.3 SDK mit Xcode 4.0 installiert. Wenn ich versuche, mein Projekt zu erstellen, wird der folgende Fehler angezeigt. Ich weiß nicht, warum ich diesen Fehler bekomme. Könnte mir jemand helfen, diesen Build-Fehler zu beheben?

Beim Lesen von /Users/username/Desktop/iPAD/MyProject/trunk/Resourses/images/top_bar.png hat pngcrush den libpng-Fehler festgestellt: Keine PNG-Datei.

Datei konnte nicht gefunden werden: /Users/username/Library/Developer/Xcode/DerivedData/Project-fmhveawksgdtnraclfizuhrekmzi/Build/Products/Debug-iphoneos/MyApp-Upgraded.app/top_bar.png

Getsy
quelle
Um die mehreren Bilder in einem Ordner in einem einzigen Schritt in PNG zu konvertieren, verwenden Sie das Terminal. Verwenden Sie cd, um in den Ordner zu gelangen, der die Bilder enthält (JPGs oder einen beliebigen Typ). Code ausführen: mkdir pngs; sips -s format png . --out pngs Es konvertiert Ihre Bilder in .png und erstellt einen pngs-Ordner mit den konvertierten Bildern. Siehe auch
HDdeveloper
Ich stand vor einem ähnliches Problem und stellte eine Lösung , die für mich gearbeitet hier . Dies passiert auch, wenn Sie mehrere Bilder mit demselben Namen in Ihrem Projekt haben und Ressourcen in Bundles kopieren .
Anup

Antworten:

60

Haben Sie überprüft, ob die Datei Users/kavapanga/Desktop/iPAD/ALN II 3 latest 2/trunk/Resourses/images/CS_logo_for_top_bar.pngvorhanden ist? Überprüfen Sie auch, ob es sich um eine PNG-Datei handelt. Klicken Sie mit der rechten Maustaste auf die Datei und führen Sie eine Info abrufen aus, um zu überprüfen, ob die Datei eine andere Erweiterung hat und als Erweiterung zum Ausblenden markiert ist. Wenn Sie sich über das Format der Datei nicht sicher sind, sollte das Öffnen der Datei und das erneute Speichern als PNG-Datei die meiste Zeit funktionieren.

Krishna
quelle
Hallo Krishna, ja, ich sehe, dass die Datei im PNG-Format verfügbar ist.
Getsy
2
Könnten Sie bitte noch einmal versuchen, es als PNG zu speichern?
Krishna
Hallo Krishna, wie du gesagt hast, habe ich wieder als .PNG-Format gespeichert. Es gibt jetzt keinen Build-Fehler. Wenn ich jedoch versuche, über Xcode 4 auf meinem iPad 2 zu installieren (alle Einstellungen sind vorgenommen), wird "MyApp-iPad fertig ausgeführt" angezeigt, aber die auf meinem iPad installierte App wird nicht angezeigt. Was könnte Grund sein?
Getsy
Das wird schwer zu beantworten sein, ohne viele Details über Ihre App zu kennen. Haben Sie sich die Protokolle in der Konsole angesehen, während die App ausgeführt wird? Können Sie es auch im Debug-Modus mit Haltepunkt ausführen?
Krishna
1
Ich denke, es wurde nur positiv bewertet, aber nicht akzeptiert. Nicht sicher warum. Haben Sie das Häkchen gegen die Antwort angeklickt?
Krishna
89

Ich hatte das gleiche Problem, aber es lag nicht an einem beschädigten PNG : Es lag daran, dass zwei PNG-Dateien denselben Dateinamen in verschiedenen Verzeichnissen meines Quellbaums hatten. Das Besondere war, dass die Fehler (ich hatte 4 Dateien mit "Zwillingen") von Build zu Build nicht identisch waren. Bei einem Lauf hatte ich Fehler bei allen Dateien, bei dem anderen nur bei einigen.

Guillaume Laurent
quelle
2
Das ist mir passiert. Ich habe ein Projekt eröffnet, das ich seit ein paar Tagen nicht mehr benutzt habe, und nach zwei oder drei Builds dieses.
Seltsam
Möglicherweise wurden beide Versionen zu Ihrer Erstellungsphase für Kopierdateien hinzugefügt. Zumindest war das das Problem für mich.
Pascal
51

Ich hatte das gleiche Problem. So beheben Sie das Problem: Öffnen Sie das Bild mit Vorschau -> Datei> Exportieren> Formatänderung in PNG und fertig!

Dorald
quelle
Dies war ein großartiger Fund. Künstler hatte als psd aber mit png erweiterung
gespeichert
2
Außerdem muss das Projekt bereinigt werden. : D
Max
10

Es gibt keine Probleme mit Bild oder Xcode. Bei der Erstellung dieses Bilds aus Photoshop geht es darum, ob dieses Bild interlaced ist oder nicht. Während Sie Ihr Bild in Photoshop speichern, erhalten Sie eine Option dafür.

Schauen Sie sich diesen Link für weitere Informationen an:

App mit Xcode 4 erstellen - es wird immer ein Fehler bezüglich des PNG-Bildes angezeigt

nicht interlaced: Sie sollten ein Bild verwenden, das nicht interlaced ist. Dies ist das ursprüngliche PNG-Bild.

Interlaced: Diese Option eignet sich für Bilder, die aus dem Internet heruntergeladen werden. Dies wird insbesondere dann verwendet, wenn Sie die Ladezeit für Bilder reduzieren müssen. Diese Option erstellt intern eine PNG-Datei, jedoch mit geringerer Klarheit und geringerer Auflösung wie ein normales JPEG-Bild. Deshalb haben solche Bilder die Eigenschaft, dass es sich um ein JPEG-Bild handelt.

Hoffe das wird euch allen helfen.

Viel Spaß beim Codieren :)

Mrunal
quelle
10

Ich habe diesen Fehler erhalten, als ich Bilder im Projektordner in einen Ordner "Bilder" verschoben habe.

Es stellte sich heraus, dass meine Erstellungsphase "Ressourcen kopieren" die Schritte zum Kopieren der Dateien aus ihrem neuen, korrekten Ordner und aus dem vorherigen Ordner, in dem sie gespeichert waren, enthielt. Durch Entfernen der veralteten Erstellungsschritte wurden die Fehler behoben.

Danra
quelle
6

Ein weiterer Grund, warum pngcrush PNG-Dateien als nicht wirklich PNG-Dateien betrachtet, besteht darin, dass Sie sie versehentlich mit intakten Ebenen exportieren. Wenn Sie die Datei im Finder überprüfen, suchen Sie im Bereich Weitere Informationen (Abmessungen, Farbraum usw.) nach einem Element mit dem Namen "Ebenen".

Es könnte so etwas sagen wie:

Layer 68, Title Banner, Group 26

Dies geschieht, wenn Designer manchmal als PNG speichern, anstatt für Web / Mobile zu exportieren. Und es zerstört libpng (und damit pngcrush) vollständig.

Die Lösung besteht darin, das PNG ordnungsgemäß zu exportieren oder das PNG selbst zu öffnen und es als "flaches" PNG erneut zu exportieren.

Eric Goldberg
quelle
1
Hinweis: Dies kann auch durch PSD-Dateien verursacht werden, die mit einer PNG-Erweiterung gespeichert wurden, aber tatsächlich PSD-Dateien sind. Das passiert auch ziemlich oft, egal wie gut der Designer ist. Späte Nächte sind späte Nächte. :)
Eric Goldberg
5

Dies kann durch ein inkompatibles PNG-Dateiformat verursacht werden. Sie benötigen das "Farbprofil" für Ihre PNG-Datei, damit sie in Xcode funktioniert.

Überprüfen Sie zunächst die Informationen für Ihre Datei.

Geben Sie hier die Bildbeschreibung ein

Dies ist zwar eine gültige PNG-Datei, dies ist jedoch NICHT das Format, das Xcode annehmen kann. Sie benötigen das folgende PNG-Format:

Geben Sie hier die Bildbeschreibung ein

So konvertieren Sie Ihre PNG-Datei in ein Format, das Xcode annehmen kann. Sie können die Vorschau verwenden, um die Datei zu exportieren.

SmallChess
quelle
Ich hatte einige der grafischen Elemente unter Linux mit gwenview und GIMP bearbeitet, als PNG gespeichert und dann diesen Fehler festgestellt. / Für mich ist DIESE Antwort und Lösung perfekt. Offensichtlich wurden die ursprünglichen Assets unseres UI-Teams auf einem Mac erstellt und waren (offensichtlich) perfekt für Xcode.
KayCee
Meine Map Tile-Overlays wurden auf einem Mac ohne Alpha-Kanal (daher kein sRGB) erstellt, schlagen jedoch in meinem Projekt fehl und funktionieren in anderen perfekt.
Aremvee
3

Hatte auch dieses Problem. Das PNG existierte und war nicht korrupt.

Gelöst von:

  1. Klicken Sie erneut auf das Bild in xcode und wählen Sie "Löschen".
  2. Nur Referenz entfernen (Datei nicht in den Papierkorb werfen)
  3. Ziehen Sie es zurück in xcode (an Ort und Stelle) und stellen Sie sicher, dass Sie die richtigen Ziele auswählen
Capikaw
quelle
Hat für mich
funktioniert
2

Ich hatte dieses Problem und stellte fest, dass es ein Problem mit dem PNG gab. Ich habe es neu gemacht und gut funktioniert.

Derek Howe
quelle
Ja, der gleiche Fall ist mit mir passiert
parilogisch
2

Ich hatte das gleiche Problem. Auch wenn die Dateierweiterung möglicherweise png ist, ist die Datei möglicherweise noch etwas anderes. Und 'get info' zeigt, was auch immer die Dateierweiterung ist, denke ich. Öffnen Sie die Datei in der Vorschau und gehen Sie zu Extras -> Inspektor anzeigen -> Registerkarte Datei. Hier sollte der tatsächliche Dateityp angezeigt werden.

NSRover
quelle
Haben Sie den Grund für dieses Problem? Wir haben Bilder aus Adobe Photoshop erstellt und als .png gespeichert. Diese Bilder werden jedoch in dem von Ihnen vorgeschlagenen Menü als JPEG angezeigt. Verstehst du nicht warum?
Mrunal
Ich denke, wenn dieses Menü sie als JPEG anzeigt, müssen sie JPEG sein. Vielleicht gab es einen Fehler beim Speichern. Haben Sie versucht, dies mit PNG zu tun, das aus dem Internet heruntergeladen wurde?
NSRover
Hin und wieder speichere ich eine .psd mit der Erweiterung .png ... Verdammte Photoshop-Standardeinstellungen!
Nicolas Miari
2

Ich hatte diesen Fehler und er hatte eigentlich nichts mit dem PNG zu tun, auf dem er fehlerhaft war. Das eigentliche Problem war, dass ich zwei Dateien mit demselben Namen in meinem Projekt hatte (ich hatte eine neuere Version einer Klasse eines Drittanbieters per Drag & Drop entfernt, vorausgesetzt, sie würde die ältere Version ersetzen).

Ich habe den Verweis auf die doppelte Datei entfernt und dadurch die Erstellungsfehler behoben.

Rembrandt Q. Einstein
quelle
0

Problem gelöst

Ich habe das gleiche Problem ein paar Mal in der Entwicklung, aber heute habe ich festgestellt, dass es zwei Lösungen und ihre Möglichkeiten gibt, hier ist diese

Problem gelöst Nr. 1: Wenn Sie erstellen oder Ihr Designer das Design erstellt, das er vom Adobe Illustrator gespeichert hat, tritt das Problem auf, wenn Sie selbst erstellen, kopieren Sie einfach alle KI-Grafiken in den Photoshop, oder wenn Ihr Designer es erstellt, sagen Sie es einfach sie, um das Illustrator-Format in den Photoshop zu importieren und das pnd zu senden.

Problem gelöst # 2: Wählen Sie das Bild aus, klicken Sie mit der rechten Maustaste auf das Bild-> Informationen abrufen und überprüfen Sie, ob es im richtigen .png-Format vorliegt oder nicht, wenn es nicht einfach die .png-Erweiterung bearbeitet.

Genieß es einfach.

Appz Venture
quelle
0

Ich erhalte den gleichen Fehler, als ich versuchte, meinen Projektordner zu kopieren und das Projekt auszuführen. Das Projekt im ursprünglichen Ordner hatte dieses Problem nicht.

Das Löschen der Kopie und das Erstellen einer neuen Kopie des Ordners löste mein Problem.

alpere
quelle
0

Error:

Beim Lesen von / Volumes / Mac OS / RDC / Workpot / RestApp / RestApp / default1024_768.png hat pngcrush den libpng-Fehler abgefangen: Keine PNG-Datei.

Lösung:

  1. Ich habe die Datei "default1024_768" im PaintBrush- Tool geöffnet und die PNG-Datei saveAs mit demselben Namen gespeichert.
  2. Ersetzt die Icon-Datei im Xcode-Projekt -> Bereinigen -> Erstellen.

Das ist alles seine Arbeit wie Charme

Hoffe das wird jemandem helfen.

swiftBoy
quelle
-3

Ich habe diesen Fehler ziemlich oft. Wenn Sie zu 100% sicher sind, dass Ihr PNG vorhanden und korrekt ist, kompilieren Sie das Projekt einfach neu. Wenn es nicht funktioniert, kompilieren Sie es immer wieder neu, und manchmal funktioniert es wieder ;-) Das ist ein Fehler in Xcode, der lange Zeit vorhanden war (seit Xcode3).

Marcin Skoczylas
quelle