iOS判斷虛擬定位

虛擬定位對(duì)于自己app調(diào)試會(huì)非常有用。但是很多app開(kāi)發(fā)商可能不希望自己的產(chǎn)品被虛擬定位給干擾了。安卓系統(tǒng)中,在Android7.0后,app開(kāi)發(fā)商必須聲明自己支持虛擬定位后,才能收到虛擬定位數(shù)據(jù)。蘋(píng)果有沒(méi)有做類似的功能呢?

經(jīng)過(guò)測(cè)試后,發(fā)現(xiàn)檢測(cè)虛擬定位也是非常容易的事情。

1. 如何檢測(cè)注入app的修改方式:這種方式涉及到軟件注入和防注入。本人對(duì)此技術(shù)了解不多,不在此展開(kāi)。

2. 如何檢測(cè)xcode虛擬定位:xcode虛擬定位會(huì)使用gpx協(xié)議的文件,僅僅支持坐標(biāo),不支持海拔,海拔返回值是0,并且海拔精度返回值是固定的-1。 所以檢測(cè)方式非常簡(jiǎn)單: 判斷海拔和海拔精度是否是這兩個(gè)固定值就好了。

3. 如何檢測(cè)通過(guò)iAP協(xié)議的外設(shè)定位:蘋(píng)果在外設(shè)定位也做了一定的限制,首先海拔雖然能顯示,但是精度只是在小數(shù)點(diǎn)后一位。另外,經(jīng)緯度的精度也比較有限,大概僅僅是小數(shù)點(diǎn)后6、7位。但真實(shí)坐標(biāo)的海拔精度應(yīng)該是能到小數(shù)點(diǎn)后13-15位。所以檢測(cè)方式也顯得非常簡(jiǎn)單:通過(guò)判斷這幾個(gè)數(shù)值的精度就能確定定位是否來(lái)自外設(shè)了。

另外在git上找到個(gè)現(xiàn)成的檢測(cè)外設(shè)定位的庫(kù):https://gitee.com/coffee__li/iap2-location-checker (本人未測(cè)試,但看了下原理和我分析的是一致的)

        /**
         雖然第三方app可以修改位置,只是修改了經(jīng)緯度,但是其他數(shù)據(jù)并沒(méi)有修改,比如海拔垂直精度等數(shù)據(jù),我們可以從這些參數(shù)入手
         NSLog(@"定位信息:%lf,%lf,%lf,%lf,%lf,%lf,%lf",location.coordinate.latitude,location.coordinate.longitude,location.horizontalAccuracy,location.verticalAccuracy,location.altitude,location.course,location.courseAccuracy,location.speed);
         
         Xcode:22.281960,114.163171,5.000000,-1.000000,0.000000,-1.000000,-1.000000,-1.000000
         愛(ài)思助手:30.879535,120.934785,5.000000,-1.000000,0.000000,-1.000000,-1.000000,-1.000000
         */
        
        NSLog(@"定位信息:%lf,%lf,%lf,%lf,%lf,%lf,%lf",location.coordinate.latitude,location.coordinate.longitude,location.horizontalAccuracy,location.verticalAccuracy,location.altitude,location.course,location.speed);
        if (-1.0 == location.verticalAccuracy&&0.0 == location.altitude) {
            NSLog(@"虛擬定位");
        }

參考文章

蘋(píng)果虛擬定位技術(shù)原理和檢測(cè)
IOS 越獄插件-虛擬定位、WIFI修改
ios開(kāi)發(fā)上班打卡防虛擬定位篡改
iOS 外接設(shè)備虛擬GPS心得
如何設(shè)置iOS虛擬定位
未越獄iPhone修改定位/iPhone虛擬定位/iPhone模擬定位,蘋(píng)果MFi外設(shè)
iOS判斷虛擬定位
iOS 外接設(shè)備虛擬GPS以及防止心得

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容