Xiaomi-де жалған орналасу: MIUI және HyperOS
«Алмастыруды қосамын, екі минуттан кейін бәрі қайтып келеді» деген шағым әрқашан дерлік Xiaomi, Redmi және POCO телефондарынан келеді. Себеп қолданбада емес: MIUI мен HyperOS фондық процестерді таза Android-қа қарағанда қатаңырақ басқарады және алмастыруды ұстап тұратын қызметті жабады. Төменде нақты не болатыны және оны қандай үш баптау түзететіні берілген.
Қолданбаға автоіске қосуды қосыңыз
Параметрлер → Қолданбалар → Қолданбаларды басқару → Mock Location → «Автоіске қосу» (кейбір нұсқаларда — «Фонда жұмыс істеу»). Бұл үш баптаудың ең маңыздысы: онсыз процесті жапқаннан кейін жүйе оны қайтармайды, ал қолданбаны қолмен ашқанша алмастыру қалпына келмейді.

Батарея шектеулерін алып тастаңыз
Қолданбаның сол экранынан «Батареяны үнемдеу» немесе «Белсенділікті бақылау» тармағын тауып, «Шектеусіз» таңдаңыз. Бұл режимде микробағдарлама фондық қызметті өз қалауымен ұйықтатуды тоқтатады.

Қолданбаны соңғыларда бекітіңіз
Соңғы қолданбалар тізімін ашып, Mock Location карточкасын төмен тартыңыз — құлып белгісі пайда болады. Бекітілген қолданбалар тізімді «X» түймесімен немесе «бәрін жабу» сырғытуымен тазалағанда жабылмайды.

Алмастырудың сақталатынын тексеріңіз
Алмастыруды қосып, қолданбаны жиыңыз да, телефонды он-он бес минутқа тыныш қалдырыңыз. Содан кейін тексеріңіз: хабарландыру панельде тұруы керек, ал басқа карта қолданбасы таңдалған нүктені көрсете беруі керек.

Ішінде не болады
Микробағдарлама қолданба процесін жабады — жүйелік журналдарда бұл жүйенің шешімімен мәжбүрлі тоқтату ретінде көрінеді. Одан кейін сынақ провайдерлері Android-та соңғы жазылған мәнмен тіркелген күйінде қалады, бірақ оларға жаңа координаттарды ешкім жазбайды: оларды жасаған процесс енді жоқ.
Сырттай бұл «алмастыру қатып қалды» сияқты көрінеді: координат сол күйі қалады, бірақ жаңармайды, ал біраз уақыттан кейін жүйе нақты орналасуды қайтарады.
Қолданба өзі не істейді
Микробағдарлама баптауларына қарамастан екі қалпына келтіру механизмі жұмыс істейді. Біріншісі: ашылғанда қолданба сақталған күйді нақты күймен салыстырады және процесс өлген болса, алмастыруды қайтарады — бұл жол әрқашан жұмыс істейді. Екіншісі: бақылаушы таймер фонда күйді мезгіл-мезгіл тексеріп, қызметті өзі қайтаруға тырысады.
Бірақ екеуінің де шегі бар: микробағдарлама қолданбаға фонда іске қосылуға тыйым салса, қызметті сізсіз қайтару мүмкін емес — сол сәтте код жай ғана орындалмайды.
Автоіске қосу неге басқа баптаулардан маңыздырақ
Айырмашылықты өлшеуге болады. Автоіске қосу өшірулі болса, процесті жапқаннан кейін жүйе қызметті мүлдем қайта іске қоспайды — қалпына келтіру тек қолданбаны өзіңіз ашқанда болады. Автоіске қосу қосулы болса, жүйе жабылған қызметті шамамен үш секундта қайтарады, қолданба сақталған күйді алып, алмастыруды сіздің қатысуыңызсыз жалғастырады.
Сондықтан үш баптаудың біреуін ғана жасасаңыз, автоіске қосуды жасаңыз.
Қайта жүктелгеннен кейін қалпына келтіру
Белсенді жалған орналасу телефон жүктелгенде ең ерте жүйелік оқиға арқылы — экран құлпын ашпай тұрып-ақ — өздігінен қалпына келеді. PIN-коды бар телефонда бұл телефонды қолға алғаныңызды күтпей, алмастыруды қайтарудың жалғыз жолы.
Нақты HyperOS құрылғысындағы өлшеу мұның неге маңызды екенін көрсетті: жүктелу оқиғаларының ерте кезегі қолданбаға бір секундтан сәл артық уақытта жетеді, ал әдеттегісі он жеті секунд алады, өйткені кезекте алдыда жүйелік жаңартқыш, бұлттық қызметтер және банк қолданбалары тұр.
Басқа қабықшалардағы дәл осындай баптаулар
Ұқсас әрекет Huawei (Параметрлер → Батарея → Қолданбаларды іске қосу → қолданба үшін автоматты басқаруды өшіру), Samsung (Параметрлер → Құрылғыға қызмет көрсету → Батарея → Фондық белсенділік шектеулері), OPPO, realme және vivo-да кездеседі. Атаулары әртүрлі, мәні бір: қолданбаға фонда жұмыс істеуге рұқсат беріп, оны агрессивті батарея үнемдеуден шығару. Алмастыру бәрібір үзілсе — жиі себептері түсіндірілген.