Accueil Médias sociaux Que dois-je faire lorsque le traitement normal de mon application iOS est interrompu? - les mannequins

Que dois-je faire lorsque le traitement normal de mon application iOS est interrompu? - les mannequins

Vidéo: Je coule l’iPhone 11 Pro et je le balance de 5 m. Et j’en offre 3 2025

Vidéo: Je coule l’iPhone 11 Pro et je le balance de 5 m. Et j’en offre 3 2025
Anonim

Sur un appareil iOS, divers événements peuvent interrompre votre application pour permettre à l'utilisateur de répondre et votre application passe à l'état inactif . Si l'utilisateur choisit d'ignorer une interruption, votre application revient dans l'état actif et continue à fonctionner comme auparavant. Si l'utilisateur décide d'appuyer sur l'alerte, votre application passe alors dans son état d'arrière-plan , où il est suspendu mais reste en mémoire.

iOS vous envoie un certain nombre de messages pour vous permettre de savoir exactement ce qui se passe et vous donner la possibilité de prendre des mesures telles que sauvegarder les données utilisateur et informations d'état, signifie enregistrer le point où l'utilisateur était dans l'application. Parce que l'application est en arrière-plan et toujours en mémoire, la relance est presque instantanée.

Les objets d'une application restent en mémoire, ils n'ont donc pas besoin d'être recréés lorsque l'application est relancée. Si la mémoire devient limitée, iOS peut supprimer les applications en arrière-plan pour libérer de l'espace pour l'application de premier plan.

Comme ces interruptions entraînent une perte temporaire de contrôle de votre application, les événements tactiles ne sont plus envoyés à votre application.

La séquence d'événements commence toujours de la même manière - avec le message applicationWillResignActive: envoyé au délégué de votre application lorsque l'application est sur le point de passer de l'état actif à l'état inactif. Dans cette méthode, vous devez mettre en pause les tâches en cours, désactiver les minuteurs, limiter les taux d'images OpenGL ES et, en général, mettre les choses en attente.

Ce qui se passe après dépend de a) la nature de l'interruption, et b) comment l'utilisateur réagit à l'interruption. Votre application peut être déplacée en arrière-plan ou réactivée.

Si l'utilisateur répond à l'interruption ou a lancé une autre application, votre application est déplacée en arrière-plan.

Les deux prochaines puces expliquent les messages auxquels votre application peut répondre après son déplacement en arrière-plan:

  • Le message applicationDidEnterBackground: : Lorsque votre application passe en arrière-plan, c'est a envoyé le message applicationDidEnterBackground: Dans cette méthode, vous devez enregistrer toutes les données non enregistrées ou état (la vue actuelle, les options sélectionnées, etc.) dans un fichier de cache temporaire ou dans la base de données de préférences sur le disque.

    Même si votre application entre dans l'état d'arrière-plan, vous n'avez aucune garantie qu'elle y restera indéfiniment. Si la mémoire devient limitée, iOS purgera les applications en arrière-plan afin de libérer de l'espace pour l'application de premier plan.Vous devez faire tout ce qui est nécessaire pour pouvoir restaurer votre application au cas où elle serait par la suite purgée de la mémoire.

    Si votre application est purgée lorsqu'elle est dans cet état suspendu, elle ne reçoit aucune notification indiquant qu'elle a été supprimée de la mémoire. C'est pourquoi vous devez enregistrer les données lorsque vous recevez le message applicationDidEnterBackground:.

    Lorsque votre délégué reçoit la méthode applicationDidEnterBackground:, votre application dispose d'un délai non documenté pour terminer les tâches. Si la méthode applicationDidEnterBackground: ne retourne pas avant l'expiration du délai (ou si votre application ne demande pas plus de temps d'exécution à partir d'iOS), votre application est terminée et purgée de la mémoire.

    Si votre application demande plus de temps d'exécution ou a déclaré qu'elle exécute l'exécution en arrière-plan, elle peut continuer à s'exécuter après l'exécution de la méthode applicationDidEnterBackground:. Sinon, votre application d'arrière-plan (maintenant) est déplacée vers l'état suspendu peu après son retour de la méthode applicationDidEnterBackground:.

    Si l'application est en arrière-plan, elle peut être relancée. Cela peut se produire si l'utilisateur sélectionne l'application depuis l'écran d'accueil ou la barre multitâche ou s'il est lancé par le système si l'application traite les événements en arrière-plan ou surveille un changement d'emplacement significatif, par exemple.

  • Le message applicationWillEnterForeground: : Lorsque votre application est relancée en arrière-plan, le message applicationWillEnterForeground: est envoyé. Dans cette méthode, vous devez annuler ce que vous avez fait dans la méthode applicationDidEnterBackground:.

Si l'utilisateur ignore le message SMS ou que l'application est relancée en arrière-plan, votre application est réactivée et commence à recevoir des événements tactiles et autres.

Lorsque votre application est réactivée, le message applicationDidBecomeActive: est envoyé.

Vous pouvez utiliser la méthode applicationDidBecomeActive: pour restaurer l'application dans l'état dans lequel elle se trouvait avant l'interruption. Ici, vous annulez ce que vous avez fait dans la méthode applicationWillResignActive, par exemple redémarrer toutes les tâches qui ont été suspendues (ou pas encore démarrées) alors que l'application était inactive. Si l'application était précédemment en arrière-plan, vous devrez peut-être actualiser l'interface utilisateur.

Lorsqu'une application est en état de suspension, le système suit et fusionne les événements susceptibles d'avoir un impact sur cette application lorsqu'elle est relâchée. Dès que votre application est à nouveau opérationnelle, le système leur fournit ces événements. Pour la plupart de ces événements, l'infrastructure existante de votre application doit simplement répondre de manière appropriée.

Les applications sont généralement déplacées en arrière-plan lorsqu'elles sont interrompues. Mais si l'application a été compilée avec une version très ancienne du SDK, ou si elle fonctionne sur une ancienne version du système d'exploitation qui ne prend pas en charge le multitâche, ou si vous décidez que vous ne voulez pas que votre application s'exécute en arrière-plan et vous définissez la clé UIApplicationExitsOnSuspend dans ses informations. fichier plist - iOS met fin à votre application.

Même si votre application prend en charge le multitâche, vous devez toujours vous préparer à ce que votre application soit supprimée sans aucune notification.L'utilisateur peut tuer les applications explicitement en utilisant la barre multitâche. En outre, si la mémoire devient limitée, le système peut supprimer des applications de la mémoire pour libérer de l'espace. Si elle supprime votre application suspendue , elle ne vous avertit pas !

Lorsque votre délégué d'application reçoit le message applicationWillTerminate: dans les applications non multitâches ou en arrière-plan, vous devez effectuer les mêmes opérations que dans applicationDidEnterBackground: sauf que cette fois vous le faites en sachant que votre application a gagné ne reviens pas de l'arrière-plan.

Votre application applicationWillTerminate: implémentation de la méthode a un temps limité pour faire ce qu'elle doit faire et retourner. Plus longtemps que cela et votre application est terminée et purgée de la mémoire.

Que dois-je faire lorsque le traitement normal de mon application iOS est interrompu? - les mannequins

Le choix des éditeurs

Comment détecter les atteintes à la sécurité sur vos fichiers journaux Web hébergés - dummies

Comment détecter les atteintes à la sécurité sur vos fichiers journaux Web hébergés - dummies

Grande question est toujours sur la sécurité. Comment pouvez-vous repérer les failles de sécurité hébergées sur le Web pour protéger votre site et garantir qu'il ne sera pas piraté? La réponse courte est la suivante: Vous ne pouvez pas. Tout est piratable avec suffisamment de temps, des cerveaux sournois et des ressources. Cependant, il y a des choses que vous pouvez faire pour vous protéger un peu. ...

Comment utiliser MySQL Workbench pour votre site Web - dummies

Comment utiliser MySQL Workbench pour votre site Web - dummies

Bien que phpMyAdmin et d'autres outils d'hébergement Web Pour gérer les bases de données, il est possible que vous ayez besoin de quelque chose de plus puissant. MySQL Workbench est une bonne source dans cette instance. MySQL Workbench est un outil de conception et d'administration de base de données gratuit créé par Oracle qui réunit deux produits: MySQL Query Browser et MySQL ...

Le choix des éditeurs

Comment mettre du texte sur un cercle dans QuarkXPress - texte fictif

Comment mettre du texte sur un cercle dans QuarkXPress - texte fictif

Sur un cercle - c'est-à-dire texte suivant l'extérieur d'un cercle ou ovale - est un élément de conception commun dans les mises en page. C'est vraiment facile à faire dans QuarkXPress, mais ce n'est pas du tout évident comment. Procédez comme suit: Obtenez l'outil Ovale de la palette Outils et dessinez ...

ÉChanges peer-to-peer par rapport aux échanges Bitcoin réguliers - mannequins

ÉChanges peer-to-peer par rapport aux échanges Bitcoin réguliers - mannequins

Deux types d'échanges de bitcoins sont utilisés : peer-to-peer et régulier. D'une part, il y a les échanges de bitcoins réguliers, qui utilisent un carnet de commandes pour faire correspondre les ordres d'achat et de vente entre les personnes. Cependant, ni l'acheteur ni le vendeur n'ont la moindre idée de l'identité de l'autre partie, ce qui permet à tous les utilisateurs ...

L'interface d'application QuarkXPress - les nuls

L'interface d'application QuarkXPress - les nuls

Les palettes visibles à gauche, à droite et en bas de QuarkXPress sont flottantes - vous pouvez les faire glisser n'importe où qui vous convient. Contrairement aux palettes, les menus de la barre de menu sont collés: vous devez toujours passer la souris à la barre de menu pour y accéder. Cependant, ...

Le choix des éditeurs

Sept erreurs d'optimisation de moteur de recherche - nuls

Sept erreurs d'optimisation de moteur de recherche - nuls

Lorsque vous essayez d'obtenir votre site Web, c'est facile de faire des erreurs d'optimisation de moteur de recherche. Voici quelques-unes des erreurs de référencement les plus courantes. Vous ne connaissez pas vos mots-clés C'est également un problème majeur: la grande majorité des sites sont créés sans que les propriétaires ou les développeurs du site ne sachent vraiment ce que sont les mots-clés ...

Soumission de pages aux moteurs de recherche pour l'optimisation - dummies

Soumission de pages aux moteurs de recherche pour l'optimisation - dummies

Vous avez probablement vu "soumission "Services annoncés pour le référencement, peut-être sous la forme de spam dans votre boîte de réception, offrant de soumettre votre site Web à des centaines de moteurs de recherche, encore et encore. Dans la plupart des cas, ces services de soumission sont une perte totale de temps et d'argent. Voici comment obtenir votre site Web dans les moteurs de recherche. You ...

Six mythes À propos de Search Engine Optimization - mannequins

Six mythes À propos de Search Engine Optimization - mannequins

Il existe une grande confusion dans le monde des moteurs de recherche. beaucoup de mythes. Voici quelques-uns des mythes communément crus qui peuvent nuire à vos positions de moteur de recherche. Tout est une question de métabalises et de soumissions. C'est le mythe le plus répandu et le plus préjudiciable de tous, tenu par de nombreux concepteurs et développeurs Web. ...