[英]Automating Xcode' Debug > Simulate Location command
是否有任何編程方式來控制xcode > simulate location
命令? 我有外部位置測試腳本我想運行,理想情況下,測試套件可能會導致xcode隨意更改連接手機的位置。
這是可能的,如果是這樣的話怎么樣?
有一個名為Pokemon-Go-Controller的GitHub項目可以完全滿足您的需求。
解決方案概述:
gpx
文件 gpx
文件並在您的設備上運行它 update location
gpx
文件,設備位置將自動更新 您可以使用此Apple腳本代替自動點擊器:
#Will continue update the location to the location name below from Xcode:
property locationName : "pokemonLocation" #name of your gpx filex
###########################
tell application "System Events"
tell process "Xcode"
repeat while true
click menu item locationName of menu 1 of menu item "Simulate Location" of menu 1 of menu bar item "Debug" of menu bar 1
delay 0.2
end repeat
end tell
end tell
對的,這是可能的。 1.按@InsertWittyName的答案中所述設置GPX文件,或者如本博文中所述 。 2.使用Instruments使用不同的GPX文件在Simulator中運行您的應用程序。
我會寫出整個過程,但是比我自己更有說服力的人 。
作為一個狂熱的S / O用戶,我會失去基本上單鏈接的答案。 所以這里有一些額外的獎勵信息。
您一定要考慮安全性測試您的位置感知功能 。 今年我將參加Black Hat,所以如果你在那里,我們來談談吧!
看起來還有像這樣的 Apple Script解決方案。
我希望我至少提供了足夠的信息來證明它不僅僅是一個懶惰的鏈接答案。 享受,祝你好運!
idevicelocation是一個命令行工具,用於模擬ios設備中的地理位置。
用法:
$ idevicelocation [OPTIONS] LATITUDE LONGITUDE
設置通過兩個參數的位置,緯度和經度:
$ idevicelocation 48.856614 2.3522219000000177
傳遞負值:
$ idevicelocation 77.432332 -- -7.008373564
停止位置模擬:
$ idevicelocation --stop
選項:
-d enable connection debug messages.<br/> -u specify device UDID.<br/> -h help.<br/> -s stop location simulation on device.
它使用libimobiledevice庫與進程com.apple.dt.simulatelocation進行通信,該進程也被Xcode在內部用於同一目的。
README文件中有構建指令。
確保在進入隨機位置之前安裝正確的開發人員圖像。
感謝Angulo編寫這個非常棒的實用程序。
這個工具目前沒有附帶libimobiledevice軟件包,盡管有一個Pull Request掛起了很長時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.