Ali je zapiranje aplikacij za iPhone slaba ideja? Ne, in tukaj je zakaj.

Is Closing Iphone Apps Bad Idea







Preizkusite Naš Instrument Za Odpravo Težav

Dvokliknete gumb Domov in povlečete aplikacije z vrha zaslona: dobra ideja ali slaba ideja? V zadnjem času je nekaj zmede glede tega, ali je zaprtje aplikacij za iPhone in iPad koristno ali škodljivo, zlasti glede življenjske dobe baterije. Vedno sem rekel, da je dobra ideja: Zaprite svoje aplikacije je namig št. 4 mojega članka o kako prihraniti življenjsko dobo baterije iPhone -.





V tem članku bom razložil, zakaj zapiranje aplikacij je lahko koristno za življenjsko dobo baterije iPhone , zagotoviti izvlečki iz dokumentacije za razvijalce Apple da to podpre in vključi nekaj primeri iz resničnih testov Uporabljal sem Apple Developer Tools in svoj iPhone.



Ko pišem, želim, da so informacije, ki jih posredujem, koristne in enostavne vsi razumeti. Običajno nisem preveč tehničen, ker so mi to pokazale izkušnje z delom v trgovini Apple Store oči ljudi začnejo bleščati ko začnem govoriti o procesov , CPU čas , in življenjski cikel aplikacije .

Zapiranje aplikacije iPhoneV tem članku se bomo poglobili malo globlje kako delujejo aplikacije tako se lahko informirano odločite, ali je zapiranje aplikacij za iPhone ali iPad primerno za vas. Najprej bomo govorili o Življenjski cikel aplikacije , ki opisuje, kaj se zgodi od trenutka, ko odprete aplikacijo, dokler se ta ne zapre in izbriše iz pomnilnika.

Življenjski cikel aplikacije

Pet jih je stanja aplikacije ki tvorijo življenjski cikel aplikacije. Vsaka aplikacija na vašem iPhoneu je trenutno v enem od teh držav, večina pa je v ne teče država. Dokumentacija za razvijalce Apple razloži vsakega:





jesti začinjeno v nosečnosti

Ključni zajtrki

  • Ko pritisnete gumb Domov, da zapustite aplikacijo, gre v Ozadje ali Suspended država.
  • Ko dvokliknete gumb Domov in aplikacijo povlečete z vrha zaslona zapre in gre v Ne teče država.
  • App države se imenujejo tudi načini.
  • Aplikacije v Način v ozadju še vedno delujejo in praznijo baterijo, vendar aplikacije v V mirovanju ne.

Premikanje aplikacij navzgor: zapiranje ali prisilno prenehanje?

Če želite razjasniti nekaj zmede glede terminologije, ko dvokliknete gumb Domov na iPhonu in povlečete aplikacijo z vrha zaslona, ​​ste zapiranje aplikacijo. Prisilno prenehanje aplikacija je drugačen postopek, o katerem nameravam pisati v prihodnjem članku.

Appleov članek o podpori o iOS večopravilnost potrjuje to:

»Če želite zapreti aplikacijo, dvokliknite gumb Domov in si oglejte nedavno uporabljene aplikacije. Nato povlecite navzgor po aplikaciji, ki jo želite zapreti. '

Zakaj zapremo svoje aplikacije?

V mojem članku o kako prihraniti življenjsko dobo baterije iPhone - , Vedno sem rekel to:

»Enkrat na dan ali dva je dobro, da zaprete svoje aplikacije. V popolnem svetu vam tega nikoli ne bi bilo treba storiti in večina Appleovih uslužbencev ne bo nikoli rekla, da bi morali ... Veliko težav s praznjenjem akumulatorja se pojavi, ko je aplikacija domnevno zapreti, vendar ne. Namesto tega se aplikacija zruši v ozadju in baterije vašega iPhone-a se izpraznijo, ne da bi to sploh vedeli. '

Skratka, glavni razlog, zakaj priporočam zapiranje aplikacij, je preprečite, da bi se baterija izpraznila, ko aplikacija ne vstopi v stanje ozadja ali suspendirano stanje tako kot mora. V mojem članku o zakaj se iPhoni segrejejo , CPU vašega iPhona (osrednja procesorska enota možgani operacije) primerjam z avtomobilskim motorjem:

Če pedal dlje časa pritisnete na kovino, se avtomobilski motor pregreje in porabi veliko plina. Če se iPhone-ov CPU dlje časa vrti do 100%, se iPhone pregreje in baterija se hitro izprazni.

Vse aplikacije uporabljajo CPU v iPhonu. Običajno aplikacija, ko se odpre, sekundo ali dve porabi veliko energije CPU, nato pa se med uporabo aplikacije vrne nazaj v način z nižjo porabo. Ko se aplikacija zruši, se iPhone-ov CPU pogosto zatakne pri 100%. Ko zaprete aplikacije, poskrbite, da se to ne zgodi, ker se aplikacija vrne v ne deluje .

Ali je škodljivo zapreti aplikacijo?

Absolutno ne. Za razliko od številnih programov v računalnikih Mac ali PC, aplikacije iPhone ne čakajo, da kliknete »Shrani«, preden shranijo vaše podatke. Jabolka dokumentacija za razvijalce poudarja pomen, da so aplikacije pripravljene na zaključek s kapico:

»Aplikacije morajo biti kadar koli pripravljene na ukinitev in ne smejo čakati na shranjevanje uporabniških podatkov ali izvajanje drugih kritičnih nalog. Ukinitev, ki jo sproži sistem, je običajen del življenjskega cikla aplikacije. '

Kdaj ti zaprite aplikacijo, je tudi v redu:

»Poleg tega, da sistem prekine vašo aplikacijo, lahko uporabnik izrecno prekine tudi vašo aplikacijo z večopravilnim uporabniškim vmesnikom. Ukinitev, ki jo sproži uporabnik, ima enak učinek kot ukinitev onemogočene aplikacije. '

Argument proti zaprtju aplikacij za iPhone in iPad

Obstaja argument proti zapiranju aplikacij, ki dejansko temelji. Vendar pa temelji na a zelo ozek pogled dejstev. Tukaj je dolgo in kratko:

  • Za odpiranje aplikacije s spletnega mesta potrebujete več moči ne teče države, kot da bi jo nadaljeval iz ozadje ali začasno ustavljeno država. To je popolnoma res.
  • Apple si močno prizadeva zagotoviti, da operacijski sistem iPhone učinkovito upravlja s pomnilnikom, kar zmanjša porabo baterijskih aplikacij, ko ostanejo v ozadje ali začasno ustavljeno država. To tudi drži.
  • Če zaprete aplikacije, zapravljate življenjsko dobo baterije, ker potrebuje več energije za odpiranje aplikacij za iPhone od začetka, kot jih operacijski sistem porabi za nadaljevanje iz ozadja in stanja mirovanja. Včasih res.

Poglejmo številke

Razvijalci pogosto uporabljajo CPU čas za merjenje napora, ki ga iPhone porabi za izpolnjevanje nalog, ker lahko neposredno vpliva na življenjsko dobo baterije. Uporabil sem orodje za razvijalce Apple, imenovano Instrumenti za merjenje vpliva več aplikacij na CPU mojega iPhona.

Za primer uporabimo aplikacijo Facebook:

  • Odpiranje aplikacije Facebook iz stanja, ki se ne izvaja, porabi približno 3,3 sekunde CPU časa.
  • Če zaprete katero koli aplikacijo, jo izbrišete iz pomnilnika, jo vrnete v neaktivno stanje in tako rekoč ne porabi časa procesorja - recimo .1 sekunde.
  • S pritiskom na gumb Domov aplikacijo Facebook pošlje v stanje ozadja in porabi približno .6 sekund CPU časa.
  • Če zaženete aplikacijo Facebook iz stanja v ozadju, porabite približno 0,3 sekunde CPU časa.

Če torej aplikacijo Facebook odprete iz neaktivnega stanja (3.3), zaprete (.1) in znova odprete iz neaktivnega stanja (3.3), porabi 6,7 sekunde CPU časa. Če aplikacijo Facebook odprete iz stanja, ki ni zagnano, pritisnite gumb za domov, da ga pošljete v stanje ozadja (.6), in ga nadaljujete iz stanja ozadja (.3), porabi le 4,1 sekunde procesorskega časa.

Vau! V tem primeru zapre aplikacijo Facebook in jo znova odpre 2,6 sekunde več CPU časa. Če pustite aplikacijo Facebook odprto, ste porabili približno 39% manj energije!

In zmagovalec je…

Ne tako hitro! Moramo pogledati velika slika za natančnejšo oceno situacije.

Postavljanje porabe energije v perspektivo

39% se sliši veliko, in je - dokler se ne zaveš kako neskončno majhna količina energije, o kateri govorimo, je v primerjavi z močjo, ki jo porabi vaš iPhone. Argument proti zaprtju aplikacij se sliši odlično, dokler se ne zavedate temelji na statistiki, ki ni pomembna.

Kot smo že razpravljali, boste prihranili 2,6 sekunde CPU časa, če pustite aplikacijo Facebook odprto, namesto da jo zaprete. Koliko energije pa porabi aplikacija Facebook, ko jo uporabljate?

10 sekund sem se pomikal po svojem feedu novic in porabil 10 sekund CPU časa ali 1 sekundo CPU časa na sekundo, ko sem uporabil aplikacijo. Po 5 minutah uporabe aplikacije Facebook bi porabil 300 sekund CPU časa.

Z drugimi besedami, aplikacijo Facebook bi moral odpreti in zapreti 115-krat, da bi vplival na življenjsko dobo baterije kot 5 minut uporabo aplikacijo Facebook. Kaj to pomeni, je to:

Ne odločite se, ali boste zaprli svoje aplikacije na podlagi nepomembne statistike. Odločite se na tem, kaj je najbolje za vaš iPhone.

Vendar to ni edini razlog, zakaj je zapiranje aplikacij dobra ideja. Iti naprej…

Počasno in enakomerno zgorevanje procesorja v načinu ozadja

Ko aplikacija preklopi v način v ozadju, še naprej porablja energijo baterije, tudi če iPhone spi v žepu. Moje testiranje aplikacije Facebook potrjuje, da se to zgodi tudi če je osvežitev aplikacije v ozadju izklopljena.

Ko sem zaprl aplikacijo Facebook, je še naprej uporabljala CPU, tudi ko je bil iPhone izključen. V eni minuti je porabil 0,9 sekunde dodatnega CPU časa. Po treh minutah bi uporaba aplikacije Facebook pustila odprto več moči, kot bi jo imeli, če bi jo takoj zaprli.

Morala zgodbe je naslednja: Če aplikacijo uporabljate vsakih nekaj minut, je ne zapirajte vsakič, ko jo uporabljate. Če ga uporabljate redkeje, je dobro, da aplikacijo zaprete.

Po pravici povedano veliko aplikacij preide naravnost iz načina v ozadju v začasno, v začasno ustavljenem načinu pa aplikacije sploh ne porabijo energije. Vendar pa nikakor ne moremo vedeti, katere aplikacije so v načinu v ozadju, zato je dobro pravilo zaprite vse . Ne pozabite, koliko energije potrebujete odprto aplikacija iz nič bledi v primerjavi s količino energije, ki jo potrebuje uporaba aplikacijo.

Težave s programsko opremo se dogajajo ves čas

Aplikacije iPhone se sesujejo pogosteje, kot se morda zavedate. Večina zrušitve programske opreme so manjše in ne povzročajo opaznih stranskih učinkov. Verjetno ste to že opazili:

Uporabljate aplikacijo in naenkrat zaslon utripa in končate na začetnem zaslonu. To se zgodi, ko se aplikacije zrušijo.

Prav tako si lahko ogledate dnevnike zrušitev Nastavitve -> Zasebnost -> Diagnostika in uporaba -> Diagnostični podatki in podatki o uporabi.

Večine zrušitev programske opreme ni treba skrbeti, še posebej če zaprete aplikacije. Pogosto je treba preprosto zagnati aplikacijo, ki ima težavo s programsko opremo.

Primer pogoste težave s programsko opremo

Čas je za kosilo in opazite, da se je baterija iPhone izpraznila na 60%. Med zajtrkom ste preverili e-pošto, poslušali glasbo, vzdihovali po stanju na bančnem računu, si ogledali pogovor TED, prelistali Facebook, poslali tweet in preverili rezultat s sinočnje košarkarske tekme.

Odpravljanje zrušitve aplikacije

Spomnite se, da lahko zrušena aplikacija povzroči, da se baterija hitro izprazni in da jo lahko zaprete z zapiranjem aplikacije, vendar ne veste ki težavo povzroča aplikacija. V tem primeru (in to je resnično) aplikacija TED gori skozi CPU, čeprav ne uporabljam iPhona. Težavo lahko odpravite na dva načina:

  1. Povežite računalnik z računalnikom Mac, prenesite in namestite Xcode in Instrumenti , omogočite iPhone za razvoj, nastavite preizkus po meri za pregled posameznih procesov, ki se izvajajo v iPhonu, jih razvrstite po porabi CPU-ja in zaprite aplikacijo, zaradi katere je CPU ostal do 100%.
  2. Zaprite svoje aplikacije.

100% časa izberem možnost 2 in sem geek. (Podatke za ta članek sem zbral z možnostjo 1.) Ponovno odpiranje aplikacij iz neaktivnega stanja porabi več energije kot odpiranje iz ozadja ali onemogočenega stanja, vendar je razlika zanemarljiva v primerjavi s pomembnim praznjenjem energije, ki se zgodi, ko aplikacija zruši.

Zakaj verjamem, da je zaprtje vaših programov dobra ideja

  1. Tudi če aplikacije zaprete vsakič, ko jih uporabite, ne boste videli razlike v življenjski dobi baterije, ker je količina energije, ki jo potrebujete za odpiranje aplikacije, nepomembna v primerjavi s količino energije, ki jo potrebujete za uporabo aplikacije.
  2. Aplikacije, ki se še naprej izvajajo v načinu v ozadju, še naprej uporabljajo energijo, ko ne uporabljate iPhona, in se tekom dneva sešteva.
  3. Zapiranje aplikacij je dober način za preprečevanje resnih težav s programsko opremo, ki lahko povzročijo, da se baterija iPhone prazni Zelo hitro .

Zaprite ta članek

Ta članek je bolj poglobljen kot članki, ki jih običajno pišem, vendar upam, da je bil zanimiv in da ste izvedeli nekaj novega o tem, kako se aplikacije izvajajo na vašem iPhoneu. Nekajkrat na dan zaprem aplikacije in to mi pomaga, da iPhone deluje čim bolj nemoteno. Na podlagi testov in mojih izkušenj iz prve roke pri delu s stotinami iPhonov kot Apple-ove tehnologije lahko z gotovostjo trdim, da je zapiranje aplikacij res dober način za prihranek baterije iPhone-a.

Hvala za branje in ne pozabite plačati naprej,
David P.