这是我的宣言:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mappp.mobile"
android:versionCode="1"
android:versionName="1.0" >
<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.VIBRATE" />
<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.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.hardware.camera" />
<uses-permission android:name="android.hardware.camera.autofocus" />
<uses-sdk android:minSdkVersion="13" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:debuggable="true"
android:configChanges="orientation|screenSize|keyboardHidden" >
<activity
android:label="@string/app_name"
android:name=".MAppHDActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.phonegap.DroidGap"
android:label="@string/app_name"
android:configChanges="orientation|screenSize|keyboardHidden" >
<intent-filter>
</intent-filter>
</activity>
</application>
</manifest>
我使用的是Phonegap 1.3.0和jquerymobile。
我的测试设备是带有HC v3.2的三星Galaxy Tab 8.9。
我已经在每个论坛上阅读了同样问题的ALMOST。旋转屏幕时仍然失败。
应用程序在调试模式下崩溃后立即出现警告:webcore:在第一次布局后无法获得veiwWidth。
答案 0 :(得分:42)
在您的情况下,属性android:configChanges="orientation|screenSize|keyboardHidden"
应转到第一个<activity>
标记,而不是<application>
标记。
对于遇到类似问题的其他人,只需将screenSize
添加到android:configChanges="orientation|keyboardHidden"
或将android:minSdkVersion
属性更改为12或更低。
可以在此处找到有关此行为的更详细说明:http://groups.google.com/group/phonegap/msg/c771fffc4dd9daaf
答案 1 :(得分:3)
这是我的解决方案 将“screenSize”添加到每个Activity标记中的android:configChanges(在AnroidManifest.xml中)。
像这样:
android:configChanges="orientation|screenSize|keyboardHidden"
它解决了我的问题。