ყალბი მდებარეობა Xiaomi-ზე: MIUI და HyperOS
ჩივილი „ვრთავ ჩანაცვლებას და რამდენიმე წუთში ყველაფერი ბრუნდება“ თითქმის ყოველთვის Xiaomi-ს, Redmi-სა და POCO-ს ტელეფონებიდან მოდის. მიზეზი აპი არ არის: MIUI და HyperOS ფონურ პროცესებს სუფთა Android-ზე მკაცრად მართავს და თიშავს სერვისს, რომელიც ჩანაცვლებას ინარჩუნებს. ქვემოთ — რა ხდება ზუსტად და რომელი სამი პარამეტრი ასწორებს ამას.
ჩართეთ აპისთვის ავტოგაშვება
პარამეტრები → აპები → აპების მართვა → Mock Location → „ავტოგაშვება“ (ზოგ ვერსიაში — „ფონურ რეჟიმში მუშაობა“). ეს სამი პარამეტრიდან ყველაზე მთავარია: მის გარეშე პროცესის გათიშვის შემდეგ სისტემა მას აღარ დააბრუნებს და ჩანაცვლება არ აღდგება, სანამ აპს ხელით არ გახსნით.

მოხსენით ბატარეის შეზღუდვები
აპის იმავე ეკრანზე იპოვეთ „ბატარეის დაზოგვა“ ან „აქტივობის კონტროლი“ და აირჩიეთ „შეზღუდვების გარეშე“. ამ რეჟიმში გარსი ფონურ სერვისს საკუთარი შეხედულებით აღარ აძინებს.

ჩაკეტეთ აპი ბოლო აპებში
გახსენით ბოლო აპების სია და Mock Location-ის ბარათი ქვემოთ ჩამოწიეთ — გამოჩნდება ბოქლომის ხატულა. ჩაკეტილი აპები არ იხურება, როცა სიას „X“-ით ან „ყველას გასუფთავების“ გასრიალებით ასუფთავებთ.

შეამოწმეთ, რომ ჩანაცვლება ძლებს
ჩართეთ ჩანაცვლება, ჩაკეცეთ აპი და ტელეფონი ათი-თხუთმეტი წუთით მარტო დატოვეთ. შემდეგ შეამოწმეთ: შეტყობინება ისევ პანელში უნდა იყოს, სხვა რუკების აპი კი ისევ არჩეულ წერტილს უნდა აჩვენებდეს.

რა ხდება შიგნით
გარსი აპის პროცესს თიშავს — სისტემის ჟურნალებში ეს სისტემის გადაწყვეტილებით იძულებით შეჩერებად ჩანს. ამის შემდეგ სატესტო პროვაიდერები Android-ში ბოლო ჩაწერილი მნიშვნელობით რეგისტრირებული რჩება, მაგრამ მათში ახალ კოორდინატებს არავინ წერს: პროცესი, რომელმაც ისინი შექმნა, აღარ არსებობს.
გარედან ეს „ჩანაცვლება გაიყინა“-ს ჰგავს: კოორდინატი იგივე რჩება, მაგრამ აღარ ახლდება, გარკვეული დროის შემდეგ კი სისტემა ნამდვილ მდებარეობას აბრუნებს.
რას აკეთებს აპი თავად
აღდგენის ორი მექანიზმი გარსის პარამეტრებისგან დამოუკიდებლად მუშაობს. პირველი: გახსნისას აპი შენახულ მდგომარეობას ფაქტობრივს ადარებს და, თუ პროცესი მოკვდა, ჩანაცვლებას აბრუნებს — ეს გზა ყოველთვის მუშაობს. მეორე: საკონტროლო ტაიმერი პერიოდულად ამოწმებს მდგომარეობას ფონურ რეჟიმში და სერვისის თავად დაბრუნებას ცდილობს.
მაგრამ ორივეს აქვს ზღვარი: თუ გარსი აპს ფონურ რეჟიმში გაშვებას უკრძალავს, სერვისის თქვენ გარეშე დაბრუნება შეუძლებელია — კოდი იმ მომენტში უბრალოდ არ სრულდება.
რატომ არის ავტოგაშვება დანარჩენ პარამეტრებზე მნიშვნელოვანი
განსხვავება გაზომვადია. გამორთული ავტოგაშვებით სისტემა პროცესის გათიშვის შემდეგ სერვისს საერთოდ აღარ უშვებს — აღდგენა მხოლოდ მაშინ ხდება, როცა აპს თავად გახსნით. ჩართული ავტოგაშვებით სისტემა გათიშულ სერვისს დაახლოებით სამ წამში აბრუნებს, აპი შენახულ მდგომარეობას იღებს და ჩანაცვლებას თქვენი მონაწილეობის გარეშე აგრძელებს.
ასე რომ, თუ სამი პარამეტრიდან მხოლოდ ერთს გააკეთებთ, ჩართეთ ავტოგაშვება.
აღდგენა გადატვირთვის შემდეგ
აქტიური ყალბი მდებარეობა ტელეფონის ჩატვირთვისას ავტომატურად აღდგება სისტემის ყველაზე ადრეული მოვლენით — ეკრანის განბლოკვამდეც კი. PIN-კოდიან ტელეფონზე ეს ერთადერთი გზაა, ჩანაცვლება დაბრუნდეს ისე, რომ ტელეფონის ხელში აღებას არ დაელოდოს.
ნამდვილ HyperOS მოწყობილობაზე გაზომვამ აჩვენა, რატომ არის ეს მნიშვნელოვანი: ჩატვირთვის მოვლენების ადრეული რიგი აპამდე წამზე ცოტა მეტში აღწევს, ჩვეულებრივს კი ჩვიდმეტი წამი სჭირდება, რადგან რიგში წინ სისტემის განახლების სერვისი, ღრუბლოვანი სერვისები და საბანკო აპები დგას.
იგივე პარამეტრები სხვა გარსებზე
მსგავსი ქცევა გვხვდება Huawei-ზე (პარამეტრები → ბატარეა → აპების გაშვება → აპისთვის ავტომატური მართვის გამორთვა), Samsung-ზე (პარამეტრები → მოწყობილობის მოვლა → ბატარეა → ფონური გამოყენების ლიმიტები), OPPO-ზე, realme-სა და vivo-ზე. სახელები განსხვავდება, აზრი ერთია: დაუშვით აპის ფონურ რეჟიმში მუშაობა და გამორიცხეთ იგი აგრესიული ენერგოდაზოგვიდან. თუ ჩანაცვლება მაინც ითიშება — ხშირი მიზეზები ახსნილია აქ.