From 583a94d42a4d0af13c557156da418a4d9dff0090 Mon Sep 17 00:00:00 2001 From: Mariya Date: Mon, 16 Oct 2023 18:27:13 +0530 Subject: [PATCH] Log Out user , the user is redirected to dashboard activity, if the device is disconnected --- .../presentation/hemocube/HemocubeActivity.kt | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemocubeActivity.kt b/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemocubeActivity.kt index fcc4110..3d43cf2 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemocubeActivity.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemocubeActivity.kt @@ -1,5 +1,6 @@ package com.example.hpostesting.presentation.hemocube +import android.annotation.SuppressLint import android.app.PendingIntent import android.content.BroadcastReceiver import android.content.ComponentName @@ -7,6 +8,7 @@ import android.content.Context import android.content.Intent import android.content.IntentFilter import android.content.ServiceConnection +import android.content.SharedPreferences import android.hardware.usb.UsbDevice import android.hardware.usb.UsbDeviceConnection import android.hardware.usb.UsbManager @@ -17,10 +19,14 @@ import android.view.Menu import android.widget.Toast import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity +import androidx.core.content.ContentProviderCompat.requireContext import androidx.core.content.ContextCompat import androidx.core.view.get +import androidx.navigation.fragment.findNavController import com.example.hpostesting.data.DataHolder import com.example.hpostesting.data.constant.Constants +import com.example.hpostesting.presentation.dashboard.DashboardActivity +import com.example.hpostesting.presentation.dashboard.ui.LoginFragment import com.example.hpostesting.presentation.testRight.UsbService import com.hoho.android.usbserial.driver.UsbSerialDriver import com.hoho.android.usbserial.driver.UsbSerialProber @@ -33,7 +39,7 @@ open class HemocubeActivity : AppCompatActivity() { private lateinit var binding: ActivityHemocubeBinding private val viewModel by viewModels() private var myMenu: Menu? = null - + private lateinit var sharedPreference: SharedPreferences private lateinit var mDriver: UsbSerialDriver private var mConnection: UsbDeviceConnection? = null lateinit var mService: UsbService @@ -81,8 +87,11 @@ open class HemocubeActivity : AppCompatActivity() { supportActionBar?.setDisplayHomeAsUpEnabled(true) setupListener() connectUsb(false) + applicationContext.getSharedPreferences("PREFERENCE_NAME", Context.MODE_PRIVATE) + } + @SuppressLint("SuspiciousIndentation") private fun setupListener() { DataHolder.usbConnected.observe(this) { Log.d("USB OBSERVE", "HemoCube called -> $it") @@ -92,6 +101,7 @@ open class HemocubeActivity : AppCompatActivity() { } else { myMenu?.get(0)?.icon = ContextCompat.getDrawable(this, R.drawable.ic_baseline_usb_off_24) + logoutUser() Toast.makeText(this, "Device is Disconnected", Toast.LENGTH_SHORT).show() } } @@ -185,4 +195,16 @@ open class HemocubeActivity : AppCompatActivity() { viewModel.isServiceConnected = false } } + + private fun logoutUser() { + val intent = Intent(this, DashboardActivity::class.java) + intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK + startActivity(intent) + finish() + } + + + + + } \ No newline at end of file