2012-10-03 58 views
2

我使用Google搜索,PhoneGap需要android:configChanges="orientation|screenSize|keyboardHidden"值來刷新屏幕尺寸。但後來Eclipse pukes發現有一個錯誤:error: Error: String types not allowed (at 'configChanges' with value 'orientation|screenSize|keyboardHidden').。那麼我的清單配置有什麼問題?這是我整個Android清單配置:Android(Phonegap)在旋轉時崩潰

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.agilitus" 
    android:versionCode="1" 
    android:versionName="1.0" android:installLocation="internalOnly"> 

    <supports-screens 
     android:largeScreens="true" 
     android:normalScreens="true" 
     android:smallScreens="true" 
     android:resizeable="true" 
     android:anyDensity="true" 
    /> 

    <uses-permission android:name="android.permission.CAMERA" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> 
    <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

    <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16" /> 


    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" android:debuggable="true" android:testOnly="false"> 
     <activity 
      android:name=".IndexActivity" 
      android:label="@string/app_name" 
      android:screenOrientation="portrait" 
      android:configChanges="orientation|screenSize|keyboardHidden"> 

      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 

正如你可以看到我上面安裝3.2 My Android SDK Manager window

所有版本上As you can see I installed all versions above 3.2 My manifest file

+0

順便說一句PhoneGap V2.0。 –

+0

你安裝了Android 3.2以上的任何sdk版本嗎? –

+0

安裝了3.2以上版本。現在我正在安裝3.2以上的所有版本。 –

回答

1

嘗試仍然得到一個錯誤反轉屏幕尺寸和keyboardHidden。

screenSize已得到added in SDK版本13.如果您嘗試在Android 3.1或更低版本上啓動應用程序,它將無法工作,因爲SDK無法找到screenSize值。

順便說一句,Phonegap starting guide建議configChanges這個值:

android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" 
+0

即使我由於明顯錯誤而無法編譯。我試圖在Android 4.0.3上編譯 –

+0

android:minSdkVersion應該至少爲13,如果目標版本不小於minSdkVersion,則目標版本不重要。 – ridvanzoro

2

試試這個,只要複製粘貼此代碼。

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.agilitus" 
    android:versionCode="1" 
    android:versionName="1.0" android:installLocation="internalOnly"> 

    <supports-screens 
     android:largeScreens="true" 
     android:normalScreens="true" 
     android:smallScreens="true" 
     android:resizeable="true" 
     android:anyDensity="true" 
    /> 

    <uses-permission android:name="android.permission.CAMERA" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> 
    <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

    <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16" /> 


    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" android:debuggable="true" android:testOnly="false"> 
     <activity 
      android:name=".IndexActivity" 
      android:label="@string/app_name" 
      android:configChanges="orientation|keyboardHidden" 
      android:screenOrientation="portrait"> 

      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 
+0

這工作正常,但在旋轉更改應用程序craffers。 –

+0

你想旋轉你的應用程序嗎? plz清除此... – MRT

+0

請嘗試此操作,我修改我的答案。 首先複製過去,然後轉到項目 - >清理..(應用程序)然後再運行..! – MRT

相關問題