私が開発しているアプリは、横向きモードでのみ表示する必要があります。
私のアプリ記述子には
<aspectRatio>landscape</aspectRatio>
<autoOrients>false</autoOrients>
iOS デバイスでは、アプリは横向きモードで起動され、すべてが期待どおりに機能します。
しかし、Android デバイス (Samsung galaxy S3) にデプロイしようとすると、アプリが縦向きモードで起動されます。
記述子ファイルを変更して読み取ると、次のようになります。
<aspectRatio>landscape</aspectRatio>
<autoOrients>true</autoOrients>
その後、アプリの向きが変わります。
デバッグ中に、起動時のアプリの向きが stage.orientation == "default" であることがわかりました
android:screenOrientation="landscape"
また、app.xml (アプリ記述子ファイル) に Android 固有の構成を追加しました。
<android>
<manifestAdditions>
<![CDATA[
<manifest android:installLocation="auto">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/>
<application android:enabled="true">
<activity android:excludeFromRecents="false" android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
]]>
</manifestAdditions>
<!--Color depth for the app (either "32bit" or "16bit"). Optional. Default 16bit before namespace 3.0, 32bit after -->
<!--<colorDepth></colorDepth>-->
</android>
これは既知の問題ですか? これの原因は何ですか?
編集:
stage.setAspectRatio( StageAspectRatio.LANDSCAPE );
私はメインクラスで使用することになりました。PORTRAIT以外のデフォルトの向きを持つデバイスでも動作します