ყალბი GPS მდებარეობა Android-ზე root-ის გარეშე
ჯერ კიდევ არსებობს მოსაზრება, რომ მდებარეობის ჩანაცვლება root-ის გარეშე შეუძლებელია. ის მოძველებულია: ყალბი მდებარეობის მექანიზმი Android-შია ჩაშენებული და ხელმისაწვდომია ნებისმიერი აპისთვის, რომელიც მომხმარებელმა დეველოპერის პარამეტრებში აირჩია. განვიხილოთ, რას იძლევა ეს გზა, რას — არა, და რატომ ჯდება მეორე ვარიანტი — პროგრამული გარსის მოდიფიკაცია — იმაზე ძვირი, ვიდრე ჩანს.
დარწმუნდით, რომ root ნამდვილად არ გჭირდებათ
ჩაშენებული მექანიზმი საკმარისია, თუ ამოცანაა კოორდინატების მიწოდება აპებისთვის, რომლებიც მდებარეობას სისტემის მეშვეობით ჩვეულებრივი გზით იღებს: რუკები, ამინდი, ახლომახლო ძიება, თქვენი აპები დეველოპმენტსა და ტესტირებაში. ეს სცენარების აბსოლუტური უმრავლესობაა.

ჩართეთ დეველოპერის რეჟიმი
პარამეტრები → „ტელეფონის შესახებ“ → შვიდი შეხება „ანაწყობის ნომერზე“. პარამეტრებში გამოჩნდება განყოფილება „პარამეტრები დეველოპერებისთვის“; გარსის მიხედვით ის ზედა დონეზეა, „სისტემაში“ ან „დამატებით პარამეტრებში“.

აირჩიეთ ყალბი მდებარეობის აპი
დეველოპერის პარამეტრებში იპოვეთ პუნქტი „მდებარეობის იმიტირების აპის არჩევა“ და აირჩიეთ დაყენებული აპი. ერთდროულად აქტიური მხოლოდ ერთი შეიძლება იყოს — სისტემა რამდენიმე აპს ერთბაშად კოორდინატების მიწოდების უფლებას არ აძლევს.

გაუშვით ჩანაცვლება და შეამოწმეთ
აირჩიეთ წერტილი რუკაზე, ჩართეთ ჩანაცვლება და გახსენით სხვა რუკების აპი. თუ ის არჩეულ წერტილს აჩვენებს, მექანიზმი სისტემის დონეზე მუშაობს და დამატებითი პრივილეგიები არ დაგჭირვებიათ.

როგორ მუშაობს ეს სინამდვილეში
Android არჩეულ აპს ე. წ. მდებარეობის სატესტო პროვაიდერების რეგისტრაციისა და მათში კოორდინატების ჩაწერის საშუალებას აძლევს. შემდეგ სისტემა ამ კოორდინატებს ყველას გადასცემს, ვინც მდებარეობას ჩვეულებრივი გზით ითხოვს. იმავე მექანიზმს მობილური აპების ავტომატური ტესტებიც იყენებს — ის თავდაპირველად დეველოპმენტისთვის შეიქმნა და არა რაიმეს გვერდის ავლისთვის.
ამიტომ ჩანაცვლებას სუპერმომხმარებლის უფლებები არ სჭირდება: აპი სხვა პროცესებში არ ერევა და სისტემურ ბიბლიოთეკებს არ გადაწერს, არამედ ოფიციალურად გათვალისწინებულ შესაძლებლობას იყენებს, რომელიც მომხმარებელმა შეგნებულად ჩართო.
რას იძლევა root და რატომ არ არის ეს უფასო
ერთადერთი, რასაც პროგრამული გარსის მოდიფიკაცია პრინციპულად ამატებს, ჩანაცვლების ფაქტის დამალვის შესაძლებლობაა: „ყალბი წყაროს“ ნიშნის მოხსნა და იმ აპების მოტყუება, რომლებიც მას ამოწმებს. ამისთვის საჭიროა განბლოკილი ჩამტვირთავი, Magisk ან მსგავსი მოდულები.
ფასი: კარგავთ გარანტიას, ზოგი საბანკო აპი და სერვისი სისტემის მთლიანობის შემოწმების გამო აღარ ეშვება, განახლებები ნორმალურად აღარ ყენდება, წარუმატებელმა გადაწერამ კი შეიძლება ტელეფონი გამოუსადეგარი გახადოს. ამ გზას მხარს არ ვუჭერთ და არ აღვწერთ — Mock Location მკაცრად ჩაშენებული მექანიზმის ფარგლებში მუშაობს.
სად არის ზღვარი
Root-ის გარეშე ჩანაცვლება პატიოსნად ჩანს იმ აპებისთვის, რომლებსაც მისი დანახვა სურთ. სერვისები, რომლებისთვისაც მდებარეობა ფაქტის დასტურია — მიწოდების დადასტურება, სამუშაო დროის აღრიცხვა, მდებარეობაზე მიბმული ჯილდოები — როგორც წესი, ამ შემოწმებას ატარებს და ჩანაცვლებულ კოორდინატებთან არ იმუშავებს. ანტიჩიტ-სისტემიანი თამაშებიც.
ეს კონკრეტული აპის ხარვეზი კი არა, შეგნებული არქიტექტურული არჩევანია: აპი აკეთებს იმას, რასაც სისტემა უშვებს, და მეტის კეთებას არ იჩემებს.
რით განსხვავდება ჩანაცვლება VPN-ისგან
მათ ხშირად ურევენ. VPN ცვლის, საიდან მოდის თქვენი ქსელური ტრაფიკი — IP მისამართით სერვისი ჩათვლის, რომ სხვა ქვეყანაში ხართ. მდებარეობის ჩანაცვლება ცვლის კოორდინატებს, რომლებსაც ოპერაციული სისტემა აპებს აძლევს.
ეს სხვადასხვა არხებია და ერთმანეთს არ ცვლის: აპი, რომელიც მდებარეობას IP-ით ადგენს, ჩანაცვლებულ კოორდინატებს ვერ შეამჩნევს, ხოლო აპი, რომელიც სისტემას კოორდინატებს ეკითხება, ვერ შეამჩნევს VPN-ს. ზოგჯერ ორივე გჭირდებათ.