diff --git a/app/src/main/java/com/example/childguard/HomeFragment.java b/app/src/main/java/com/example/childguard/HomeFragment.java index 9058f94..5f462f3 100644 --- a/app/src/main/java/com/example/childguard/HomeFragment.java +++ b/app/src/main/java/com/example/childguard/HomeFragment.java @@ -80,6 +80,12 @@ public class HomeFragment extends Fragment implements OnEventListener { super.onResume(); Log.d("HomeFragment", "onResume: called"); this.updateUiState(getIsInCarLocal()); + this.updateBluetoothSituation(isBluetoothConnected()); + } + + private boolean isBluetoothConnected() { + SharedPreferences pref = requireActivity().getSharedPreferences("Bluetooth_situation", requireActivity().MODE_PRIVATE); + return pref.getBoolean("status", false); } private boolean getIsInCarLocal() { diff --git a/app/src/main/java/com/example/childguard/MainActivity.java b/app/src/main/java/com/example/childguard/MainActivity.java index c67c8ea..23550df 100644 --- a/app/src/main/java/com/example/childguard/MainActivity.java +++ b/app/src/main/java/com/example/childguard/MainActivity.java @@ -427,9 +427,7 @@ public class MainActivity extends AppCompatActivity { if (BluetoothDevice.ACTION_ACL_CONNECTED.equals(action)) { //Do something if connected //Bluetoothデバイスが接続されたときの処理 - e.putBoolean("change", true); - e.apply(); - changeBluetooth();//HomeFragmentの表示を接続にする + changeBluetooth(true); Log.d("BT", "Device connected"); Log.d("BT_Judge", "Registered: " + registeredId); @@ -450,9 +448,7 @@ public class MainActivity extends AppCompatActivity { //Do something if disconnected //デバイスが切断されたときの処理 - e.putBoolean("change", false); - e.apply(); - changeBluetooth();//HomeFragmentの表示を切断にする + changeBluetooth(false); if (deviceHardwareAddress.equals(registeredId)) { // 5分待機する Handler handler = new Handler(); @@ -471,12 +467,8 @@ public class MainActivity extends AppCompatActivity { } }; - public void changeBluetooth(){ - SharedPreferences pref=getSharedPreferences("Bluetooth_situation",MODE_PRIVATE); - SharedPreferences.Editor e=pref.edit(); - Boolean BluetoothConnect = pref.getBoolean("change", false); - Fragment fragment = getSupportFragmentManager().findFragmentById(R.id.fragmentContainerView); - ((HomeFragment) fragment).onEvent2(BluetoothConnect); + public void changeBluetooth(boolean actual){ + getSharedPreferences("Bluetooth_situation",MODE_PRIVATE).edit().putBoolean("status",actual).apply(); } }