当前位置: 代码迷 >> Android >> android 关于锁屏,解屏之后游戏重新运行而不是继续运行,该怎么解决
  详细解决方案

android 关于锁屏,解屏之后游戏重新运行而不是继续运行,该怎么解决

热度:102   发布时间:2016-05-01 21:48:31.0
android 关于锁屏,解屏之后游戏重新运行而不是继续运行
现在问题是,游戏中,锁屏,然后再解锁屏幕,游戏重新运行,没有继续运行..需要实现的功能是继续运行....
代码如下:

public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
startApp();
final IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_SCREEN_OFF);
filter.addAction(Intent.ACTION_SCREEN_ON);
BroadcastReceiver mBatInfoReceiver = null;
registerReceiver(mBatInfoReceiver, filter);
mBatInfoReceiver = new BroadcastReceiver() {
public void onReceive(final Context context, final Intent intent) {
final String action = intent.getAction();
if (Intent.ACTION_SCREEN_ON.equals(action)) {
onRestoreInstanceState(savedInstanceState);
onResume();
Log.d("", "screen is on...");
} else if (Intent.ACTION_SCREEN_OFF.equals(action)) {
Log.d("", "screen is off...");
onSaveInstanceState(savedInstanceState);
onPause();
}
}
};

}

public void onSaveInstanceState(Bundle savedInstanceState) {

super.onSaveInstanceState(savedInstanceState);
}

public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
}




各位大神指导一下,哪里出问题了.!

------解决方案--------------------
onSaveInstanceState()里保存你的游戏状态数据;
onRestoreInstanceState()里恢复游戏状态数据;
onPause()里保存游戏状态;
onResume()里恢复游戏状态。
------解决方案--------------------
这个可能和你手机有关,你的手机是不是在手机锁屏即进入省电模式后会自动清除一些进程呢?
------解决方案--------------------
onPause
onResume
onSaveInstanceState
onRestoreInstanceState
你需要的是重载必要的函数来保存状态,框架在合适的时候会调用你,而不是你调用框架,你在BroadCastReveiver里的代码不知道想干嘛,还是先正确理解Activit生命周期相关的知识吧
  相关解决方案