我有一个Android库项目以及使用该库项目的主应用程序.主应用程序的清单文件如下所示:
<?xml version="1.0" enCoding="utf-8"?><manifest xmlns:androID="http://schemas.androID.com/apk/res/androID" package="com.test.myapp" androID:installLocation="preferExternal" androID:versionCode="3" androID:versionname="1.1" > <uses-sdk androID:minSdkVersion="8" /> <uses-permission androID:name="androID.permission.INTERNET" /> <uses-permission androID:name="androID.permission.ACCESS_NETWORK_STATE"/> <uses-permission androID:name="androID.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission androID:name="androID.permission.ACCESS_COARSE_LOCATION" /> <application androID:icon="@drawable/ic_launcher" androID:label="@string/app_name" > <activity androID:screenorIEntation="sensor" androID:configChanges="orIEntation|screenSize" androID:label="@string/app_name" androID:name="MyAppActivity" > <intent-filter> <action androID:name="androID.intent.action.MAIN" /> <category androID:name="androID.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity androID:name="com.Google.ads.AdActivity" androID:configChanges="keyboard|keyboardHIDden|orIEntation|screenLayout|uiMode|screenSize|smallestScreenSize" /> </application></manifest>
我还重写了主应用程序中的onConfigurationChanged()方法.现在,当我在AndroID模拟器中运行应用程序并通过Ctrl F11更改方向时,将重新启动应用程序的主要活动.
根据我在这里和Google上发现的所有说明,当我在清单文件中设置了androID:configChanges =“ orIEntation | screenSize”参数时,应该不会发生这种情况,但是它会:(
有什么想法我在这里想念的吗?
提前致谢!
解决方法:
您需要将keyboard | keyboardHIDden添加到androID:configChanges属性.当然在模拟器上(我认为在某些设备上),当您更改方向时,键盘状态也会更改.如果您没有让活动重新处理方向更改,也需要执行此 *** 作,以防止再次重新启动活动.
总结以上是内存溢出为你收集整理的即使设置了configChanges,Android活动也会在方向更改时重新启动全部内容,希望文章能够帮你解决即使设置了configChanges,Android活动也会在方向更改时重新启动所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)