Программная настройка местоположения симулятора iphone - PullRequest
9 голосов
/ 05 ноября 2011

Я только что обновился до XCode 4.2 и вижу интересную функцию, которая позволяет мне вручную определять местоположение устройства.Кто-нибудь знает способ сделать то же самое программно?Я хотел бы установить местоположение в некоторых модульных тестах.

Ответы [ 2 ]

9 голосов
/ 24 июня 2014

Следующий AppleScript позволит вам установить местоположение симулятора iOS.Должна быть предусмотрена возможность интеграции сценариев такого типа в сценарий модульного тестирования, или чтобы ваш сценарий генерировал эквивалентные AppleEvents.

tell application "iOS Simulator"
    activate
end tell

tell application "System Events"
    tell process "iOS Simulator"
        tell menu bar 1
            tell menu bar item "Debug"
                tell menu "Debug"
                    tell menu item "Location"
                        click
                        tell menu "Location"
                            click menu item "Custom Location…"
                        end tell
                    end tell
                end tell
            end tell
        end tell

        tell window 1
            set value of text field 1 to "40.69"
            set value of text field 2 to "-74.045"
            click button "OK"
        end tell

    end tell
end tell
2 голосов
/ 05 ноября 2011

Можно использовать условное включение препроцессора; проверьте макрос TARGET_IPHONE_SIMULATOR следующим образом:

#if TARGET_IPHONE_SIMULATOR
    float longitude = 39.1234;
    // etc    
#else
    float longitude = myLocationManager.longitude
#endif
...