Logo pl.androidermagazine.com
Logo pl.androidermagazine.com

Funkcje Oreo, które pokochasz: limity wykonywania w tle

Spisu treści:

Anonim

Twój telefon z Androidem pozwoli ci robić wiele rzeczy na raz, nawet jeśli nie wszystkie z nich są na ekranie. Oprócz procesów systemowych, które mogą wykonywać takie czynności, jak sprawdzanie Twojej lokalizacji lub sprawdzanie, czy masz nową wiadomość e-mail, aplikacje można otwierać, a następnie uruchamiać w tle, gdy robimy coś innego.

Dobrym przykładem może być otwarcie ulubionego odtwarzacza muzyki i wybranie listy odtwarzania do słuchania podczas sprawdzania Facebooka lub przeglądania Internetu. Aplikacja muzyczna działa w tle, robiąc swoje, gdy patrzysz na coś innego.

Ale niektóre aplikacje mogą być wysyłane całkowicie w tle. W naszym przykładzie limitów wykonywania w tle Oreo, odtwarzacz muzyczny nie jest wyświetlany na ekranie i działa jako aplikacja w tle, ale nadal współpracuje z nami i odtwarza muzykę. Inne aplikacje, które otworzyliśmy i z których zrezygnowaliśmy, powinny być traktowane inaczej, ponieważ nic z nimi nie robimy.

Może to mieć wpływ na ograniczone zasoby telefonu. Działające aplikacje mogą korzystać z pamięci RAM i zabierać czas przetwarzania innym aplikacjom, które wymagają zakrętu, a nawet aplikacji, której aktualnie używasz na pierwszym planie (co widzisz na ekranie). Podczas gdy Android zawsze miał pewne ograniczenia co do tego, co aplikacja może robiąc, gdy nie ma go na ekranie, Oreo wprowadza mądrzejsze ograniczenia, aby pomóc oszczędzać zasoby systemowe i żywotność baterii, określając, kiedy aplikacja jest naprawdę w tle i może być bezczynna, a następnie utrzymując ją cichą, ale gotową, gdy będziesz chciał jej ponownie użyć.

Chociaż ten film jest specyficzny dla Androida Nougat, świetnie sobie radzi, wyjaśniając, w jaki sposób usługi w tle mogą wpływać na aplikacje, których aktywnie używasz, i sposoby, aby zachować kontrolę.

Co nowego lub zmienione w Oreo

  • Ograniczenia usługi w tle. System wykonuje teraz kilka rutynowych kontroli, aby sprawdzić, czy aplikację można uznać za działającą w tle. Sprawdza, czy aplikacja lub którekolwiek z działań (rzeczy, które aplikacja może zrobić lub zainicjować) nie są widoczne na ekranie. Następnie sprawdza, czy jest do niej podłączona inna aplikacja lub korzysta z jakichkolwiek informacji, a na koniec sprawdza kilka usług o wysokim priorytecie, takich jak możliwość działania jako klawiatura lub czy aktywnie nasłuchuje informacji głosowych.

Jeśli żadna z tych rzeczy nie jest prawdą, uznaje się, że aplikacja działa w tle. Gdy aplikacja jest po raz pierwszy uznawana za działającą w tle, ma krótkie okno, w którym można to zrobić na wypadek, gdyby musiał uruchomić coś, co przeniósłoby ją do aplikacji lub usługi na pierwszym planie. Po upływie tego czasu aplikacja jest zmuszona do bezczynności. Bezczynne aplikacje otrzymują także okresowo krótkie okna na wypadek, gdyby musiały się połączyć lub uruchomić usługi, ale poza tymi czasami jest ono zużyte i zużywa bardzo mało zasobów, dopóki nie wrócimy do niego.

  • Ograniczenia transmisji. Transmisje są wykonywane przez system, gdy zdarzają się określone zdarzenia. Na przykład po włączeniu i wyłączeniu telefonu w trybie samolotowym wysyłany jest program informujący aplikacje o tym, co się stało. Programiści mogą skonfigurować swoje aplikacje do nasłuchiwania określonych transmisji i pisania kodu, aby aplikacje zrobiły coś, gdy się zdarzy. Jeśli aplikacja nasłuchuje transmisji, za każdym razem, gdy zostanie wysłana, aplikacja wykorzystuje zasoby systemowe, aby sprawdzić, czy konieczne jest jakieś działanie.

Aplikacje zbudowane dla Oreo nie mogą się już rejestrować w celu nasłuchiwania wiadomości rozgłoszeniowych, które nie są bezpośrednio kierowane do samej aplikacji, chyba że zostaną uruchomione i uruchomione (nie w tle zgodnie z powyższymi regułami). Te zmiany zaczęły się od Androida N, a zmiany w Oreo są nieco bardziej surowe. Ponieważ może to ograniczyć to, co deweloper może chcieć zrobić, opracowano nowe narzędzia do planowania określonych zadań przy użyciu własnych procesów aplikacji. Istnieje również kilka transmisji wyłączonych z tego wszystkiego, na przykład gdy zmienia się strefa czasowa lub telefon jest podłączony do ładowarki. Każda aplikacja może ich słuchać i odpowiednio reagować.

Ograniczając sposób, w jaki aplikacja może nasłuchiwać i czego może słuchać, aplikacje oznaczone jako znajdujące się w tle nie obudzą się, aby sprawdzić, czy muszą robić coś tak często. „Uśpione” aplikacje zużywają znacznie mniej zasobów.

Dlaczego to pokochasz

Chcemy, aby nasze telefony robiły wiele rzeczy. Ale bez względu na to, o co prosimy, podczas gdy patrzymy na ekran, oczekujemy, że wszystko będzie płynne i responsywne.

Wszyscy od czasu do czasu odczuwamy frustrację związaną z opóźnieniem klawiatury i nie jest to dobre doświadczenie. Dzięki ściślejszej smyczy w aplikacjach, na które nie patrzymy, pamięć, moc obliczeniowa i żywotność baterii są wykorzystywane bardziej wydajnie i zobaczymy mniej rzeczy, takich jak opóźnienie klawiatury. Użytkownik końcowy - to my! - nie musi tutaj nic robić, ponieważ te zmiany są częścią systemu. Co więcej, starsze aplikacje, które nie zostały zbudowane z myślą o Oreo, można ustawić tak, aby przestrzegały tych reguł na stronie ustawień aplikacji.

Takie zmiany łączą się ze świetnym sprzętem, który obserwujemy każdego roku i oznaczają, że Twój telefon może wykonywać te czynności, o które prosisz, jeszcze lepiej!