Підміна геолокації на Android без root
Досі трапляється переконання, що без root підмінити геолокацію неможливо. Воно застаріло: механізм фіктивного місцезнаходження вбудований в Android і доступний будь-якому застосунку, який користувач вибрав у параметрах розробника. Розберімо, що дає цей шлях, чого не дає і чому інший варіант — модифікація прошивки — коштує дорожче, ніж здається.
Переконайтеся, що root справді не потрібен
Вбудованого механізму достатньо, якщо завдання — постачати координати застосункам, які отримують геолокацію звичайним способом через систему: мапам, погоді, пошуку поруч, власним застосункам у розробці й тестуванні. Це переважна більшість сценаріїв.

Увімкніть режим розробника
Налаштування → «Про телефон» → сім натискань на «Номер складання». У налаштуваннях з’явиться розділ «Параметри розробника»; залежно від оболонки він лежить на верхньому рівні, у «Системі» або в «Розширених налаштуваннях».

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

Запустіть підміну й перевірте
Виберіть точку на мапі, увімкніть підміну й відкрийте інший застосунок із мапою. Якщо він показує вибрану точку, механізм працює на рівні системи, і жодних додаткових прав не знадобилося.

Як це влаштовано насправді
Android дозволяє вибраному застосунку зареєструвати так звані тестові провайдери місцезнаходження й записувати в них координати. Далі система віддає ці координати всім, хто запитує геолокацію звичайним способом. Тим самим механізмом користуються автотести мобільних застосунків — його створено саме для розробки, а не для того, щоб щось обходити.
Тому підміна не потребує прав суперкористувача: застосунок не втручається в інші процеси й не переписує системних бібліотек, а користується офіційно наданою можливістю, яку користувач свідомо ввімкнув.
Що дає root і чому це не безкоштовно
Єдине, що принципово додає модифікація прошивки, — можливість приховати факт підміни: прибрати позначку «фіктивне джерело» й обдурити застосунки, які її перевіряють. Для цього потрібні розблокований завантажувач, Magisk або подібні модулі.
Ціна: втрачається гарантія, частина банківських застосунків і сервісів перестає запускатися через перевірку цілісності системи, оновлення прошивки більше не встановлюються звичайним способом, а невдала прошивка може зробити телефон непридатним. Цей шлях ми не підтримуємо й не описуємо — Mock Location працює строго в межах вбудованого механізму.
Де проходить межа
Без root підміну чесно видно застосункам, які хочуть її бачити. Сервіси, для яких геолокація є доказом факту, — підтвердження доставки, облік робочого часу, винагороди за місцем — зазвичай виконують цю перевірку й не працюватимуть із підміненими координатами. Ігри з античит-системами теж.
Це не вада конкретного застосунку, а свідомий архітектурний вибір: застосунок робить те, що дозволяє система, і не вдає, що робить більше.
Чим підміна відрізняється від VPN
Їх часто плутають. VPN змінює, звідки йде ваш мережевий трафік, — за IP-адресою сервіс вирішить, що ви в іншій країні. Підміна геолокації змінює координати, які операційна система віддає застосункам.
Це різні канали, і вони не замінюють один одного: застосунок, що визначає місцезнаходження за IP, не помітить підмінених координат, а застосунок, що запитує координати в системи, не помітить VPN. Іноді потрібно і те, і те.