解决方法很简单,在android项目AndroidManifest.xml文件中的activity中添加如下内容:

android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"

这个设置是很全的一个,基本上保证了你随便折腾,都不会重新运行游戏。

VALUE   DESCRIPTION 
"mcc" 国际移动用户识别码所属国家代号是改变了-----  sim被侦测到了,去更新mcc    mcc是移动用户所属国家代号
"mnc" 国际移动用户识别码的移动网号码是改变了------ sim被侦测到了,去更新mnc    MNC是移动网号码,最多由两位数字组成,用于识别移动用户所归属的移动通信网
"locale" 地址改变了
"touchscreen" 触摸屏是改变了------通常是不会发生的
"keyboard" 键盘发生了改变----例如用户用了外部的键盘
"keyboardHidden" 键盘的可用性发生了改变
"navigation" 导航发生了变化-----通常也不会发生
"screenLayout" 屏幕的显示发生了变化------不同的显示被激活
"fontScale" 字体比例发生了变化----选择了不同的全局字体
"uiMode" 用户的模式发生了变化
"orientation" 屏幕方向改变了
"screenSize" 屏幕大小改变了
"smallestScreenSize" 屏幕的物理大小改变了,如:连接到一个外部的屏幕上

游戏重新启动,是因为上述原因发生变化后,导致activity的生命周期重新运行,执行了onCreat()方法。游戏中用不到这么多设置,需要哪个设置哪个就好了。

更多相关文章

  1. 3种Android隐藏顶部状态栏及标题栏的方法
  2. Android(安卓)投屏实现纪要
  3. Android学习笔记之获得屏幕属性DisplayMetrics
  4. Android有用的程序片段
  5. android 屏幕适配的总结,适合面试
  6. Android(安卓)OpenGL ES(九):绘制线段Line Segment
  7. Android获取屏幕大小 .
  8. android 模拟器键盘控制键不能用 以及 设置模拟器屏幕大小
  9. Android触摸屏驱动屏幕翻转

随机推荐

  1. 关于Android(安卓)Pie(Android(安卓)9.0),你
  2. 全屏、小屏、横屏、竖屏的切换
  3. android listview的divider分割线的宽度
  4. Android Drawable缓存
  5. android之实现ProgressBar进度条组件
  6. Android 隐藏ActionBar
  7. Android 使用WebView控件展示SVG图
  8. 各种控件属性
  9. Android两种序列化方式详解(一):Serializabl
  10. 判断Android的WIFI与GPS状态,并引导用户前