De nombreux frameworks inutiles se chargent dans mon application iPhone - puis-je empêcher cela?

StackOverflow https://stackoverflow.com/questions/111558

  •  02-07-2019
  •  | 
  •  

Question

Il semble y avoir beaucoup de cadres inutiles chargés dans mon application iPhone. Je n'ai pas créé de lien entre eux dans Xcode et je n'en ai pas besoin.

Quand j'exécute "lsof -p" contre eux sur l'iPhone, je vois ceux-ci (et d'autres) que je ne peux pas expliquer:

  • CoreVideo
  • AddressBookUI
  • JavaScriptCore
  • MobileSync
  • EAP8021X
  • BluetoothManager
  • MusicLibrary
  • CoreAudio
  • MobileMusicPlayer
  • AddressBook
  • CoreTelephony
  • MobileBluetooth
  • Calendrier
  • TelephonyUI
  • WebCore / WebKit
  • MediaPlayer
  • VideoToolbox

Je me demande si cela contribue aux temps de démarrage lents. Mon application est très simple. Il s’agit essentiellement d’un client de publication semblable à Twitter. La seule fonction multimédia consiste à sélectionner une image de la caméra ou de la bibliothèque. Elle utilise de simples fonctions NSURL / NSURLConnection pour publier des données sur plusieurs services Web.

Ceci est un iPhone 2.1 jailbreaké avec quelques applications installées à partir de Cydia. Est-ce normal?

Était-ce utile?

La solution

C’est normal, mais cela ne veut pas dire que c’est l’idéal. Cela n'a probablement qu'un impact minime sur le temps de démarrage de l'application, mais il aura un impact légèrement supérieur à celui sur l'utilisation de la mémoire.

Si vous souhaitez améliorer cette fonctionnalité, la meilleure chose à faire est de vous rendre sur le rapporteur de bogues d'Apple <. / a> et déposer un bogue à ce sujet. Joignez une copie de votre application (le binaire, pas la source) et ils devraient pouvoir suivre les choses à partir de là. Je suis sûr qu'ils seraient intéressés par de tels rapports.

Autres conseils

Avant de vous donner la peine d'essayer d'empêcher le système d'exploitation de charger ces infrastructures, vous devez exclure toute autre cause de la lenteur de votre temps de lancement.

Commencez par créer un " Hello, World " application et l'utiliser comme base. Un modèle d'application de projet avec rien ajouté devrait bien servir. Si cela démarre plus rapidement que votre propre application, c'est quelque chose que vous faites dans votre propre code.

scroll top