2014-12-05 15 views
8

Ich habe eine sehr einfache iPhone App mit Xcode 6.1 und Swift gemacht. Ich bin wirklich neu in der Entwicklung von iOS und lief in eine App, die am Ende 134 MB ist! Das ist natürlich nicht akzeptabel.Reduzieren iOS App Dateigröße

Ich habe Hintergrundbilder für alle Bildschirmgrößen, die zusammen 20 MB ergeben. und das ist es! Ich speichere diese Bilder in xcassets, da dies der bevorzugte Weg ist.

die App sollte nicht mehr als 25 MB, glaube ich.

Ich fand heraus, dass ich einige Referenzen in meinem Projekt verdoppelt hatte. Ich entfernte diese und noch meine .app-Datei ist 89 mbs!

Was mache ich falsch? Ich habe mehrere Threads gelesen, aber nichts hat wirklich geholfen!

Was habe ich bisher:

- reduce the size of all pngs 
- disable the compress PNG option, as it seems to make the PNGs bigger (lol) 
- configured the build settings to run the fastest and smallest build 
- Strip Debug Symbols During Copy build setting to Yes (COPY_PHASE_STRIP = YES) 

edit1: Apparenty Xcode tut etwas seltsam mit meinem pngs. Einige dieser Bilder, die ursprünglich 2 MB groß waren, sind mehr als 10 MB in der .app-Datei. Was macht xcode dort?

+4

Haben Sie das App-Bundle inspiziert? Suchen Sie die .app-Datei Ihrer App im Finder, klicken Sie mit der rechten Maustaste darauf und verwenden Sie "Paketinhalt anzeigen". Du solltest sehen, was wirklich so viel Platz in Anspruch nimmt. –

+0

Danke Matthias, ich bin gerade fertig damit! siehe edit1 – Michael

Antwort

11

Es ist eigentlich nicht überraschend, dass die rekomprimierten Apple-Dateien größer sind. Sie sind optimiert für schnelle Belastung, nicht zu klein. Wenn Ihnen die Größe nicht wichtig ist, deaktivieren Sie trotz allem die Komprimierung. Selbst wenn Sie sich um Geschwindigkeit kümmern, können Sie es besser als Apple machen.

https://imageoptim.com/xcode.html

Also ja, schalten Sie die PNG-Komprimierung ab. Das erste, was ich tun würde, ist den ipa zu bauen. Ein ipa ist eigentlich eine Zip-Datei, also bauen Sie das ipa, kopieren Sie es in einen Ordner auf Ihrem Mac, benennen Sie die Datei mit der Erweiterung .zip um und doppelklicken Sie darauf. Dies wird es erweitern. Suchen Sie die App im Payload-Ordner und klicken Sie mit der rechten Maustaste darauf und wählen Sie Paketinhalt anzeigen. Sie werden alle Vermögenswerte sehen. Nach Größe sortiert. Ich nehme an, Sie haben übermäßig große Bilder. Bei dieser Größe ist meine Vermutung, dass die zusätzliche Größe wahrscheinlich fast ausschließlich durch die PNG-Dateien verursacht wird.

Verwenden Sie für einige Bilder nicht Retina. Ehrlich gesagt werden die meisten Leute es nicht bemerken. iOS wird die nicht Netzhaut auf der Netzhaut anmutig verwenden. Dies kann eine Menge Platz sparen,

Denken Sie auch an die Verwendung von JPEG-Dateien anstelle von PNG für einige der Dateien, wenn Sie keine Transparenz benötigen. Jpeg-Dateien sind weniger effizient, können aber viel kleiner sein. Vergleichen Sie beide. Hängt davon ab, in welchem ​​Maße die Bilder durchgehend sind.

Standardmäßig sind PNG-Dateien 32 Bit. 24 Bit Farbe und 8 Buit Alpha/Transparenz. Sie können ein bisschen Größe sparen, indem Sie zu 24 Bit gehen. Sie können auch eine Menge an Farbe speichern, bis zu 16 Bit Farbe oder darunter. Bei 8-Bit-PNG-Dateien verwenden Sie eine Nachschlagetabelle. Spielen Sie mit Photoshop und den Speichern für Optionen bei PNG mit Bit-Tiefe 8 und darunter.

Ich habe alle Arten von teuerer Komprimierungssoftware aber oft verwenden, um die $ 8

https://itunes.apple.com/us/app/lossless-photo-squeezer/id704083918?mt=12

Versuchen Sie, die 8-Bit-PNG-Option und die JPEG-Optionen.

BEARBEITEN Ich habe etwas Forschung. Ich wusste immer, dass Fireworks die PNG-Komprimierung besser gemacht hat. Ich wusste nicht, dass es ein 8bit PNG mit einem 8 Bit Alphakanal gab. Photoshop unterstützt 8 Bit mit einem 1-Bit-Alpha-Kanal.Ich habe immer Leuten gesagt, 32-Bit-PNG zu verwenden, wenn ihre Transparenz mehr als 1 Bit benötigt. In der Zukunft werde ich sie wissen lassen, dass die 8-Bit-Version mit 8-Bit-Alpha die bessere Route ist. Sie können Photoshop nur zum endgültigen Speichern der Datei verwenden. Sie müssen nur 32 Bit speichern und woanders komprimieren.

http://calendar.perfplanet.com/2010/png-that-works/

David

+0

Am Ende entfernte ich die xcassets, die ich für jede Bildschirmgröße vorbereitet habe. Alleine diese Dateien landeten in einer Datei namens acres.car in meinem ipa, die ungefähr 80 mb groß war! Schrumpfte die PNGs und alles, jetzt ist die App weniger als 20 MB ... – Michael

Verwandte Themen