protection anti crash en cas de serv mort

This commit is contained in:
marc barbier
2021-01-04 16:07:28 +01:00
parent 049b34e250
commit 0a0fe37078
2 changed files with 13 additions and 10 deletions
@@ -1,6 +1,7 @@
package com.iutlaval.myapplication.Game; package com.iutlaval.myapplication.Game;
import android.content.Context; import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.BitmapFactory; import android.graphics.BitmapFactory;
import android.graphics.Color; import android.graphics.Color;
@@ -11,6 +12,7 @@ import android.widget.Toast;
import com.iutlaval.myapplication.Game.Cards.Card; import com.iutlaval.myapplication.Game.Cards.Card;
import com.iutlaval.myapplication.Game.Cards.CardRegistery; import com.iutlaval.myapplication.Game.Cards.CardRegistery;
import com.iutlaval.myapplication.GameActivity; import com.iutlaval.myapplication.GameActivity;
import com.iutlaval.myapplication.MainActivity;
import com.iutlaval.myapplication.PopupRunable; import com.iutlaval.myapplication.PopupRunable;
import com.iutlaval.myapplication.R; import com.iutlaval.myapplication.R;
import com.iutlaval.myapplication.Video.Drawables.DrawableBitmap; import com.iutlaval.myapplication.Video.Drawables.DrawableBitmap;
@@ -109,8 +111,15 @@ public class GameLogicThread extends Thread{
coms= new Communication(client); coms= new Communication(client);
} catch (IOException e) { } catch (IOException e) {
Log.e("ERROR SERVER DEAD","srv"); Log.e("ERROR SERVER DEAD","srv");
//TODO display error and don't crash the game; gameActivity.runOnUiThread(new PopupRunable("erreur de comunication avec le serveur",gameActivity));
System.exit(1); renderer.terminate();
//gameativity.finish() n'etait pas utilisable il fermais l'application
Intent intent = new Intent(gameActivity,MainActivity.class);
//on reset le top et recrée l'activité principale
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
gameActivity.startActivity(intent);
return;
} }
renderer.updateFrame(); renderer.updateFrame();
@@ -21,7 +21,6 @@ public class MainActivity extends AppCompatActivity {
final Button playButton = (Button) findViewById(R.id.playButton); final Button playButton = (Button) findViewById(R.id.playButton);
playButton.setOnClickListener(new View.OnClickListener() { playButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) { public void onClick(View v) {
//Toast.makeText(getApplicationContext(), "click sur button", Toast.LENGTH_LONG).show();
pickDeckGame(); pickDeckGame();
} }
}); });
@@ -29,25 +28,20 @@ public class MainActivity extends AppCompatActivity {
final Button cardButton = (Button) findViewById(R.id.cardButton); final Button cardButton = (Button) findViewById(R.id.cardButton);
cardButton.setOnClickListener(new View.OnClickListener() { cardButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) { public void onClick(View v) {
//Toast.makeText(getApplicationContext(), "click sur button", Toast.LENGTH_LONG).show();
pickDeckList(); pickDeckList();
} }
}); });
} }
private String pickDeckGame() { private void pickDeckGame() {
DialogFragment d = new DeckPickDialogueGame(this); DialogFragment d = new DeckPickDialogueGame(this);
d.show(getSupportFragmentManager(),"s"); d.show(getSupportFragmentManager(),"s");
return "demodeck";
} }
private String pickDeckList() { private void pickDeckList() {
DialogFragment d = new DeckPickDialogueList(this); DialogFragment d = new DeckPickDialogueList(this);
d.show(getSupportFragmentManager(),"s"); d.show(getSupportFragmentManager(),"s");
return "demodeck";
} }