Для эмуляторов или симуляторов, которые проще всего настроить, используйте следующие возможности.
Android
gpsEnabled: true
iOS
locationServicesEnabled: true
locationServicesAuthorized: true
Требуется предоставить возможность bundleId
, чтобы последние работали.
Для реальных устройств все сложнее. В Android вы должны иметь возможность включать макеты в настройках разработчика, однако я не смог заставить его работать, используя метод Appium setLocation
. Этот вопрос, вызывающий приложение настроек Appium через adb, может помочь вам в этом отношении: https://android.stackexchange.com/questions/35716/is-it-possible-to-set-devices-latitude-and-longitude-using-adb-shell.
Наконец, для iOS вы можете использовать конфигурацию запуска с поддельным местоположением из XCode , но я не нашел никакого способа программно запустить приложение с поддельным местоположением из автоматизации Appium.