1. 背景
如何在 Android 模擬器中模擬 GPS 位置邀泉?本文記錄了使用方法血淌。
2.實現(xiàn)方法
2.1 方案一:使用 telnet
可以通過 Telnet 連接到仿真器对途。然后你有一個模擬器控制臺替裆,可以讓你輸入某些數(shù)據(jù),比如地理定位杯聚、網(wǎng)絡(luò)等。
比如:
要連接到控制臺抒痒,打開命令行并輸入:
telnet localhost 5554
然后幌绍,就可以使用 geo 命令在設(shè)備上設(shè)置緯度、經(jīng)度和海拔等故响。
在控制臺中輸入:
geo fix <longitude value> <latitude value>
2.2 方案二: 使用模擬器
打開模擬器
選擇 location
在這里可以填寫經(jīng)緯度位置傀广,點擊 SEND 按鈕是模擬發(fā)送單個位置。
右下角的 LOAD GPX/KML 按鈕是加載一個錄制好的軌跡文件彩届,加載后就可以播放了(點擊 綠色的播放按鈕即可)伪冰。那么如何錄制一段軌跡呢?往下看
2.3 使用 adb 指令
先看下模擬器的名稱
adb devices
adb 的-s 指令指定了模擬器的名稱, 然后再使用 geo fix 發(fā)送位置點樟蠕。
adb -s emulator-5554 emu geo fix 20.49612 20.24010
然后寫個腳本不斷的發(fā)就行了贮聂。
3. 錄制軌跡文件
可以使用 GPX 文件來記錄軌跡,并在上面說的方法加載軌跡文件寨辩。
我們借助谷歌地圖的鏈接來實現(xiàn):
- 1吓懈、打開谷歌地圖,選擇一個開始位置靡狞,和一個結(jié)束位置耻警,出現(xiàn) “路線”后,復(fù)制 瀏覽器中的連接地址。
- 2榕栏、打開 此網(wǎng)站:https://mapstogpx.com 并將鏈接粘貼到“Let's Go”文本框內(nèi)畔勤,并按“Let's Go”按鈕,將下載 GPX 文件扒磁。
- 3庆揪、將下載的的文件保存到本地,回到 安卓模擬器軟件妨托,點擊 LOAD GPX/KML 按鈕加載文件缸榛,再點擊播放即可。
下面是操作示例:
在谷歌地圖生成一個路線兰伤,并復(fù)制 網(wǎng)址内颗。
在 mapstogpx 中粘貼路線網(wǎng)址并下載gpx文件的圖例。
4. 擴展
使用 telnet 連接 模擬器敦腔,進入 模擬器的控制臺( Android Console )
windows 下使用 telnet均澳,mac 下使用 nc,指令如下:
nc localhost 5554
# windows 下使用 telnet localhost 5554
進入后需要先授權(quán)符衔,要先找到密碼 找前。密碼位于 ~/.emulator_console_auth_token 文件內(nèi)。新開一個命令行窗口輸入:
cat ~/.emulator_console_auth_token
獲得密碼后判族,回到 已經(jīng)進入的Android控制臺窗口輸入:
auth 你的密碼
然后就可以了躺盛,輸入help看看有哪些指令:
# 輸入 help
help
# 下面是輸出的結(jié)果:
Android console commands:
help|h|?
help-verbose
ping
automation
event
geo
gsm
cdma
crash
crash-on-exit
kill
restart
network
power
quit|exit
redir
sms
avd
qemu
sensor
physics
finger
debug
rotate
screenrecord
另外,每次輸入密碼太繁瑣形帮,不想輸入的話槽惫,就打開 .emulator_console_auth_token 這個文件,刪除密碼保存辩撑,后續(xù)就不再需要身份驗證了界斜。
5..參考:
https://newbedev.com/how-to-emulate-gps-location-in-the-android-emulator
https://developer.android.com/studio/run/emulator
https://blog.csdn.net/weixin_36429993/article/details/117544318
END