Што такое фіктыўнае месцазнаходжанне на Android
«Фіктыўнае месцазнаходжанне», «mock location», «выбраць праграму для фіктыўных месцазнаходжанняў» — усё гэта пра адну наладу Android, на якую натыкаюцца ў рэжыме распрацоўшчыка, не разумеючы, што яна робіць. Кароткі адказ: яна прызначае праграму, якой сістэма дазваляе падстаўляць каардынаты замест сапраўдных. Ніжэй — што гэта азначае на практыцы, адкуль узялася функцыя і якія чаканні ад яе не спраўджваюцца.
Вызначэнне адным абзацам
Фіктыўнае месцазнаходжанне — гэта каардынаты, якія тэлефон атрымлівае не ад спадарожнікаў і вышак, а ад праграмы, якую вы прызначылі ў параметрах распрацоўшчыка. Android называе такую праграму тэставай крыніцай месцазнаходжання, і пакуль яна працуе, сістэма аддае яе кропку ўсім, хто пытаецца «дзе карыстальнік». Англійскае слова «mock» азначае падробку або імітацыю — як mock-аб'екты ў праграмаванні.

Адкуль узялася функцыя
Яе дадалі не дзеля таго, каб падманваць сэрвісы. Распрацоўшчыку праграмы трэба праверыць, што адбудзецца з картай у іншым горадзе, як паводзіць сябе дастаўка на мяжы зоны і што пакажа надвор'е ў іншым часавым поясе, — выязджаць дзеля гэтага на месца немагчыма. Таму ў Android ёсць убудаваны спосаб падставіць каардынаты, і ляжыць ён у «Параметрах распрацоўшчыка» побач з адладкай па USB.
Практычнае следства: функцыя ёсць у любым Android пачынаючы з 6-й версіі, не патрабуе root і не лічыцца ўзломам сістэмы. Дастаткова ўключыць рэжым распрацоўшчыка і выбраць праграму; парадак — у асобнай інструкцыі.
Хто атрымлівае падменныя каардынаты
Усе праграмы адразу. Android не адрознівае іх паміж сабой: адну і тую ж кропку ён аддае карце, надвор'ю, пошуку побач і любой іншай праграме, якая запытала месцазнаходжанне звычайным шляхам. Выбраць, каго падманваць, а каму аддаваць сапраўдныя каардынаты, нельга — у сістэмы проста няма такой магчымасці.
Адсюль жа адказ на частае пытанне «а калі ў мяне некалькі праграм падмены»: актыўнай можа быць толькі адна, сістэма дапускае адзіную тэставую крыніцу месцазнаходжання.

Чаго фіктыўнае месцазнаходжанне не робіць
Не хавае факт падмены. Android дадае да кожнай каардынаты ад тэставага правайдара сцяжок «з фіктыўнай крыніцы», і любая праграма можа яго прачытаць. Банкаўскія праграмы, пацвярджэнне дастаўкі, карпаратыўны ўлік часу і гульні з антычытам так і робяць — для іх падмена бачная (падрабязны разбор), і схаваць яе ад іх нельга.
Не мяняе IP-адрас. Сэрвіс, які вызначае рэгіён па сетцы, падменных каардынат не заўважыць; там патрэбны VPN — розніца разабрана ў артыкуле падмена геалакацыі або VPN.
Не мяняе краіну акаўнта, нумар тэлефона, мову сістэмы і часавы пояс. Гэта асобныя налады, і па іх сэрвісы часта вызначаюць месцазнаходжанне дакладней, чым па каардынатах.
Як гэта выглядае на розных абалонках
Пункт называецца па-рознаму, але заўсёды ляжыць у раздзеле распрацоўшчыка: у беларускай лакалізацыі — «Выбраць праграму для фіктыўных месцазнаходжанняў», у рускай — «Приложение для фиктивных местоположений», у англійскай — «Select mock location app». У старых версіях Android (да 6.0) замест выбару праграмы быў просты пераключальнік «Дазволіць фіктыўныя месцазнаходжанні» — калі вам трапіліся такія інструкцыі, яны састарэлі.
Сам раздзел «Параметры распрацоўшчыка» па змаўчанні схаваны і з'яўляецца пасля сямі націсканняў на нумар зборкі. Дзе ён на канкрэтнай абалонцы, разабрана асобна: Xiaomi, Samsung, Huawei, HONOR, realme, OPPO і vivo, Tecno і Infinix.
Навошта гэта звычайнаму карыстальніку
Тры сцэнарыі, у якіх падмена працуе сумленна і нікога не ўводзіць у зман.
Пабачыць, як выглядае сэрвіс у іншым горадзе: карты, расклады, мясцовая выдача, надвор'е. Не аддаваць дакладны адрас праграме, якая патрабуе геалакацыю без рэальнай патрэбы, — падмена дае трэці варыянт паміж «аддаць каардынаты кватэры» і «не карыстацца праграмай». І тэсціраванне: паўтаральныя прагоны геазалежных сцэнарыяў без выезду на месца (разбор для QA).
Сцэнарыі, у якіх падмена парушае дамоўленасці з сэрвісам, — адзнака на працы, пацвярджэнне дастаўкі, абыход рэгіянальных абмежаванняў у гульнях — мы не апісваем: яны не працуюць з-за сцяжка фіктыўнай крыніцы і вядуць да блакіроўкі акаўнта.
Як уключыць і выключыць
Уключэнне займае пару хвілін: рэжым распрацоўшчыка, выбар праграмы, дазвол на геалакацыю, кропка на карце — па кроках. Што падмена сапраўды працуе, лепш за ўсё пераканацца ў іншай праграме: пяць праверак.
Выключаецца гэтак жа: спыніце падмену ў праграме, а калі трэба зусім прыбраць магчымасць — вярніце «Выбраць праграму для фіктыўных месцазнаходжанняў» на «Няма». Падрабязней — у адказе як адключыць фіктыўнае месцазнаходжанне.