2014-01-19 86 views
7

我使用科爾多瓦3.3.0與我的銀河S3(運行最新Cyanogenmod)來測試我正在工作的應用程序;我需要應用程序屏幕保持「肖像」模式,即使用戶旋轉設備也會被鎖定。無論我嘗試了什麼或者我遵循的教程,該應用都忽略了鎖定屏幕的首選項。我究竟做錯了什麼?科爾多瓦忽略屏幕方向鎖

這裏是我的config.xml:

<?xml version='1.0' encoding='utf-8'?> 
<widget id="com.numediaweb.test" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> 
    <name>Test</name> 
    <description> 
     Test.</description> 
    <author href="http://test.com" email="[email protected]"> 
     me 
    </author> 
    <content src="index.html" /> 
    <access origin="*" /> 
    <preference name="orientation" value="portrait" /> 
    <preference name="fullscreen" value="true" /> 
    <preference name="SplashScreen" value="splash" /> 
    <preference name="SplashScreenDelay" value="3000" /> 
</widget> 

回答

12

我剛剛發現了一個有趣的answer我張貼的問題(在相關部件右)之後;這是一個bug in Cordova並修復它,你要麼編輯AndroidManifest.xml到類似的東西;

<activity android:screenOrientation="portrait" android:configChanges=... 

或使用plugin

FI更喜歡編輯清單,因爲它很容易。

+1

缺點是當你刪除/重建你的Android平臺;你必須再次添加更改:(插件的另一件事是,如果你想開始預先鎖定的科爾多瓦應用程序,你必須編輯onCreate()活動。 – numediaweb

+0

提供的插件已棄用,請使用以下代碼:http: //stackoverflow.com/a/32405384/1848600 – Gajotres

14

固定在科爾多瓦3.4.1。 現在偏好方向的作品!

<preference name="orientation" value="portrait" /> 
+2

我在3.5.0我不認爲它是固定的。https://issues.apache.org/jira/browse/CB-6182 –

1

的解決方法是編輯Android清單如下:

<application 
      android:icon="@drawable/icon" 
      android:label="@string/app_name" > 
      <activity 
       android:name=".AppName" 
       android:configChanges="orientation|keyboardHidden|screenSize" 
       android:label="@string/app_name" 
       android:launchMode="singleTask" 
       android:screenOrientation="unspecified" 
       android:theme="@android:style/Theme.Translucent.NoTitleBar" > 

與不特定的Android選擇設備的正確方向。 es。智能手機只是肖像,但平板電腦是肖像和風景