L'IPA generato da swift è così grande, circa 5 MB

Ho appena creato un semplice progetto usando il linguaggio swift, quindi lo compilo e lo archivo per generare il file .ipa. Il file IPA è così grande, è di circa 5 MB.

è giusto (nessun problema) lì? quando lo creo in Objective-C, è solo circa 500kb.

Solutions Collecting From Web of "L'IPA generato da swift è così grande, circa 5 MB"

Sì, è giusto. Le librerie contenenti l'intera lingua Swift devono essere incorporate nell'IPA. Quelle librerie fanno parte dell'app, non parte del sistema – perché Swift deve funzionare anche con la compatibilità all'indietro, in parte perché è in continua evoluzione (indipendentemente dagli aggiornamenti di sistema), e in parte per funzionare su iOS 7 (where il sistema non ha mai sentito parlare di Swift). E hanno una dimensione di circa 5 MB.

Per espandere la risposta di Matt, ecco una citazione dal blog Swift sulla compatibilità :

Puoi fidarti che la tua app functionrà bene anche in futuro. […] Questo è ansible perché Xcode incorpora una piccola libreria runtime di Swift all'interno del pacchetto della tua app. Poiché la libreria è incorporata, la tua app utilizza una versione coerente di Swift che gira su versioni del sistema operativo passate, presenti e future.

Pertanto, se la tua versione più recente dell'app è stata creata con Xcode 6.0 e un utente della tua app esegue iOS 8.1 e sono state introdotte nella tua app le modifiche alla versione di Swift, l'app non si interromperà a causa dell'aggiornamento iOS. Se la tua app ha usato solo le librerie di sistema, potrebbe.

Ciò consente agli sviluppatori di Swift di scorrere più rapidamente senza la necessità di creare compatibilità retrotriggers tra tutte le versioni.

Un ulteriore avvertimento:

Mentre la compatibilità di runtime della tua app è assicurata, lo stesso linguaggio Swift continuerà ad evolversi e anche l'interface binaria cambierà. Per sicurezza, tutti i componenti della tua app devono essere costruiti con la stessa versione di Xcode e il compilatore Swift per garantire che funzionino insieme.