Video: Why Collaborate Using Microsoft Teams? | Collaboration Kernel 2024
På en iOS-enhet som kjører iOS 4. 2 eller nyere versjoner, kan ulike hendelser i tillegg til oppsigelse avbryte appen din slik at brukeren kan svare - for Eksempel, kalendervarsler eller brukeren trykker på dvale / våkneknappen - og appen din flyttes til inaktiv tilstand.
Hvis brukeren velger å ignorere en avbrudd, flyttes appen tilbake til aktiv tilstand og fortsetter å kjøre som før. Hvis brukeren bestemmer seg for å trykke på varselet for å håndtere det (eller hvis avbrudd var fra brukeren som berører Hjem-knappen for å slå ut av søknaden din), flyttes appen din til bakgrunnsstatus, hvor den er suspendert, men forblir i minnet.
iOS sender deg en rekke meldinger for å fortelle deg nøyaktig hva som skjer, så vel som å gi deg muligheten til å ta handlinger som for eksempel lagre brukerdata og statlig informasjon, som betyr å lagre på det punktet hvor brukeren var i applikasjonen. (Hvis en app må fortsette å kjøre, kan den be om utførelsestid fra systemet.)
Fordi appen er i bakgrunnen (kjører eller suspendert) og fortsatt er i minne, er gjenoppstart nesten øyeblikkelig. En apps objekter (inkludert vinduer og visninger) forblir i minnet, så de trenger ikke å bli gjenopprettet når appen starter på nytt. Hvis minnet blir begrenset, kan iOS rense bakgrunnsprogrammer for å gjøre mer plass til forgrunnsappen.
Fordi disse forstyrrelsene forårsaker et midlertidig tap av kontroll av appen din, blir berøringshendelser ikke lenger sendt til appen din. Når du utvikler appen din, må du ta hensyn til dette. Hvis for eksempel din app er et spill, bør du pause spillet når spillet ditt blir avbrutt.
Generelt bør appen lagre informasjon om den nåværende tilstanden når den beveger seg til inaktiv tilstand og kunne gjenopprette seg til gjeldende tilstand ved en etterfølgende gjenoppstart.
I alle tilfeller starter begivenhetssekvensen på samme måte - med applicationWillResignActive: meldingen sendt til din programdelegate når programmet skal flyttes fra aktiv til inaktiv tilstand. I denne metoden bør du sette pause på løpende oppgaver, deaktivere tidtakere, slynge ned OpenGL ES-rammeprinsene (det vil si at du bør bruke denne metoden for å pause spillet) og generelt sette ting på vent.
Hva skjer etter dette avhenger av a) arten av avbrudd, og b) hvordan brukeren reagerer på avbrudd. Din søknad kan enten flyttes til bakgrunnen eller reaktiveres.