Corona SDK system.orientation возвращает неправильное значение на iphone?

Я заметил, что system.orientation при запуске приложения дает ориентацию по умолчанию, определенную в build.settings для iphone5S. Я тестировал один и тот же код на iPad2 и iPadMini и получаю правильный ответ, но с iphone5S я всегда получаю настройку по умолчанию build.settings независимо от того, какая ориентация приложения запускается, какие-либо намеки или идеи?

build.settings

orientation = { default = "portrait", supported = { "landscapeLeft", "landscapeRight", "portrait", "portraitUpsideDown" } 

main.lua

 print ( system.orientation ) -- gives wrong answer on iphone5S but not ipad2 or ipad Mini ? 

Я использую печать в качестве примера, я действительно отправляю строку на экран устройства.

Я в основном должен повернуть 5S, чтобы начать получать правильные детали ориентации, по умолчанию tit всегда говорит «портрет». Который, как вы можете себе представить, раздражает, чтобы сказать наименьшее количество приложений на iphone5S.

Использование сборки: версия 2013.2100 (2013.12.7)

Хорошо понял.

iPad вы можете доверять system.orientation … но iPhone вы должны дождаться первого изменения ориентации, прежде чем сможете доверять ему! Предполагая, что у вас есть тип устройства в вашем коде, что-то вроде этого работает,

 if (deviceType.isApple and not deviceType.is_iPad) then system.setAccelerometerInterval(100) -- Make sure we capture first orientation change by ramping up the sample to 100Hz Runtime:addEventListener("orientation", initialOrientationSet) -- capture this first change else -- Launch your app end 

Внутри initialOrientationSet выполните следующее:

 function initialOrientationSet () Runtime:removeEventListener("orientation", initialOrientationSet) system.setAccelerometerInterval (10) -- save some battery power -- Launch you app end 

Также вам придется протестировать симулятор и запустить его в обычном режиме.

ура

Давайте будем гением компьютера.