Buenos dias, estoy desarrollando un juego y me he topado con un extraño bug.
Resulta que cuando ejecuto la app por primera vez, todo va correctamente, pero al pulsar "Home" y volver a la app la pantalla se queda en blanco,
utilizando el Log he visto que ni siquiera pasa por onResume() ,
matizo que tambien he comprobado que si que pasa por onPause() antes de salir al home.
¿Alguien tiene idea de que puede estar pasando?
[*]
public class MainActivity extends Activity {
GameView gV;
public static final String PREFS_NAME = "ShNCoPrefs";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
gV=new GameView(this);
setContentView(gV);
this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
// Restore preferences
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
boolean isFirstPlay = settings.getBoolean("isFirstPlay", true);
gV.setFirstPlay(isFirstPlay);
}
@Override
public void onResume(){
super.onResume();
Log.i("onResume", "main-pasó por aquí 1");
if (gV.thread!=null)
gV.runThread();
Log.i("onResume", "main-pasó por aquí 2");
}
@Override
public void onPause(){
super.onPause();
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("isFirstPlay", gV.isFirstPlay());
// Commit the edits!
editor.commit();
if(gV.thread!=null)
gV.pauseThread();
//System.exit(0);
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event){
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
return true;
}
return super.onKeyUp(keyCode, event);
}
}
[*]
Muchas gracias de antemano.