Падмена геалакацыі на Android без root
Дагэтуль трапляецца меркаванне, што падмена геалакацыі немагчымая без root. Яно састарэла: механізм фіктыўных месцазнаходжанняў убудаваны ў Android і даступны любой праграме, якую карыстальнік выбраў у параметрах распрацоўшчыка. Разбяромся, што дае гэты шлях, чаго не дае і чаму іншы варыянт — мадыфікацыя прашыўкі — каштуе даражэй, чым здаецца.
Пераканайцеся, што root вам сапраўды не патрэбны
Штатнага механізму дастаткова, калі задача — падставіць каардынаты праграмам, якія атрымліваюць месцазнаходжанне звычайным шляхам праз сістэму: картам, надвор'ю, пошуку побач, уласным праграмам у распрацоўцы і тэсціраванні. Гэта пераважная большасць сцэнарыяў.

Уключыце рэжым распрацоўшчыка
Налады → «Пра тэлефон» → сем націсканняў на «Нумар зборкі». У наладах з'явіцца раздзел «Параметры распрацоўшчыка»; у залежнасці ад абалонкі ён ляжыць на верхнім узроўні, у «Сістэме» або ў «Дадатковых наладах».

Выберыце праграму для фіктыўных месцазнаходжанняў
У параметрах распрацоўшчыка знайдзіце пункт «Выбраць праграму для фіктыўных месцазнаходжанняў» і выберыце ўсталяваную праграму. Актыўнай можа быць толькі адна — сістэма не дазваляе некалькім праграмам падстаўляць каардынаты адначасова.

Запусціце падмену і праверце
Выберыце кропку на карце, уключыце падмену і адкрыйце іншую праграму з картай. Калі яна паказвае выбраную кропку, механізм працуе на ўзроўні сістэмы, і ніякіх дадатковых правоў не спатрэбілася.

Як гэта ўладкавана насамрэч
Android дазваляе выбранай праграме зарэгістраваць так званыя тэставыя правайдары месцазнаходжання і запісваць у іх каардынаты. Далей сістэма аддае гэтыя каардынаты ўсім, хто запытвае месцазнаходжанне звычайным спосабам. Тым жа механізмам карыстаюцца аўтатэсты мабільных праграм — ён і створаны перадусім для распрацоўкі, а не для таго, каб нешта абыходзіць.
Таму падмена не патрабуе правоў суперкарыстальніка: праграма не ўмешваецца ў іншыя працэсы і не перапісвае сістэмныя бібліятэкі, а карыстаецца афіцыйна прадугледжанай магчымасцю, якую карыстальнік уключыў свядома.
Што дае root і чаму гэта не бясплатна
Адзінае, што прынцыпова дадае мадыфікацыя прашыўкі, — магчымасць схаваць факт падмены: прыбраць сцяжок «фіктыўная крыніца» і падмануць праграмы, якія яго правяраюць. Для гэтага патрэбны разблакаваны загрузчык, Magisk або падобныя модулі.
Кошт: страчваецца гарантыя, частка банкаўскіх праграм і сэрвісаў перастае запускацца з-за праверак цэласнасці сістэмы, абнаўленні прашыўкі больш не ўсталёўваюцца штатна, а няўдалая прашыўка можа пакінуць тэлефон непрацаздольным. Гэты шлях мы не падтрымліваем і не апісваем — Mock Location працуе строга ў межах штатнага механізму.
Дзе праходзіць мяжа
Без root падмена сумленна бачная праграмам, якія хочуць яе бачыць. Сэрвісы, для якіх месцазнаходжанне — доказ факту, — пацвярджэнне дастаўкі, улік працоўнага часу, узнагароды за наведванне месцаў, — звычайна выконваюць гэтую праверку і з падменнымі каардынатамі працаваць не будуць. Гульні з антычытам таксама.
Гэта не недахоп канкрэтнай праграмы, а свядомы архітэктурны выбар: праграма робіць тое, што дазваляе сістэма, і не робіць выгляд, што ўмее больш.
Чым падмена адрозніваецца ад VPN
Іх часта блытаюць. VPN мяняе тое, адкуль ідзе ваш сеткавы трафік, — па IP-адрасе сэрвіс палічыць, што вы ў іншай краіне. Падмена геалакацыі мяняе каардынаты, якія аперацыйная сістэма аддае праграмам.
Гэта розныя каналы, і яны не замяняюць адзін аднаго: праграма, якая вызначае месца па IP, не заўважыць падменных каардынат, а праграма, якая пытаецца каардынаты ў сістэмы, не заўважыць VPN. Часам патрэбна і тое, і другое.