diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/MainActivity.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/MainActivity.java index 0e45aff..0649149 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/MainActivity.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/MainActivity.java @@ -2,9 +2,11 @@ import android.os.Bundle; import android.support.v4.app.Fragment; +import android.support.v4.app.FragmentManager; import android.support.v7.app.AppCompatActivity; import org.ntlab.radishforandroidstudio.R; +import org.ntlab.radishforandroidstudio.cactusClient.views.PlayerFragment; import org.ntlab.radishforandroidstudio.cactusClient.views.StartFragment; @@ -31,5 +33,24 @@ setContentView(R.layout.activity_main); } - + @Override + public void onBackPressed() { + FragmentManager manager = getSupportFragmentManager(); + if (manager == null) { + super.onBackPressed(); + return; + } + Fragment fragment = manager.findFragmentById(R.id.fragment_place); + if (fragment == null) { + super.onBackPressed(); + return; + } + if (fragment instanceof PlayerFragment) { + manager.beginTransaction().remove(fragment).commit(); + manager.popBackStack(); +// super.onBackPressed(); + return; + } + super.onBackPressed(); + } } diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/OtherPlayerCharactersModel.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/OtherPlayerCharactersModel.java index 300f488..186d4d7 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/OtherPlayerCharactersModel.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/OtherPlayerCharactersModel.java @@ -78,7 +78,6 @@ Player player = entry.getValue(); // 自分自身は無視する - System.out.println(entry.getKey() + ", " + playerId); if (entry.getKey().equals(playerId)) continue; // 情報の取得 diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/OwnPlayer.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/OwnPlayer.java index 6ce0c2d..8004c06 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/OwnPlayer.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/OwnPlayer.java @@ -124,7 +124,7 @@ player.setAngle(q); JSON json = new JSON(); - con.addFormParam("characterID", json.encode(player.getCharacterID())); + con.addFormParam("characterID", player.getCharacterID()); con.addFormParam("cameraState", json.encode(player.getCameraState())); con.addFormParam("position", json.encode(player.getPosition())); con.addFormParam("animationClassToStart", json.encode(player.getEmoteState())); @@ -142,4 +142,10 @@ public void onResponse(String response) { } + + public void logout() { + con = new CharacterConnection(playerId); + con.setCallBack(this); + con.doDelete(); + } } diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/PlayerFragment.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/PlayerFragment.java index 57a8743..11cd8b5 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/PlayerFragment.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/PlayerFragment.java @@ -101,6 +101,7 @@ @Override protected void progress(long interval) { super.progress(interval); + System.out.println("update"); } @@ -121,5 +122,16 @@ pad = (RWTPad) f.findViewById(org.ntlab.radishforandroidstudio.R.id.pad); pad.addListener(player); } + + public void logout() { + player.logout(); + } + + @Override + public void onDestroy() { + System.out.println("destroy"); + logout(); + super.onDestroy(); + } }