From 2fa955bc12993ec9411aeb1834d9ab72cc054b3d Mon Sep 17 00:00:00 2001
From: liviaarumsari <13521094@mahasiswa.itb.ac.id>
Date: Fri, 5 Apr 2024 12:56:15 +0700
Subject: [PATCH] feat: delete token and user on logout

---
 app/src/main/java/com/example/abe/MainActivity.kt        | 9 +++++++--
 .../main/java/com/example/abe/ui/login/LoginActivity.kt  | 6 +++---
 2 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/app/src/main/java/com/example/abe/MainActivity.kt b/app/src/main/java/com/example/abe/MainActivity.kt
index e4cef46..1c2c332 100644
--- a/app/src/main/java/com/example/abe/MainActivity.kt
+++ b/app/src/main/java/com/example/abe/MainActivity.kt
@@ -23,6 +23,7 @@ import androidx.navigation.ui.setupActionBarWithNavController
 import androidx.navigation.ui.setupWithNavController
 import com.example.abe.connection.ConnectivityObserver
 import com.example.abe.connection.NetworkConnectivityObserver
+import com.example.abe.data.local.PreferenceDataStoreConstants
 import com.example.abe.data.local.PreferenceDataStoreConstants.USER
 import com.example.abe.data.local.PreferenceDataStoreHelper
 import com.example.abe.databinding.ActivityMainBinding
@@ -75,6 +76,10 @@ class MainActivity : AppCompatActivity(), ExportAlertDialogFragment.ExportAlertD
                 }
 
                 "EXPIRED_TOKEN" -> {
+                    lifecycleScope.launch {
+                        preferenceDataStoreHelper.putPreference(PreferenceDataStoreConstants.TOKEN,"")
+                        preferenceDataStoreHelper.putPreference(PreferenceDataStoreConstants.USER,"")
+                    }
                     val loginIntent = Intent(context, LoginActivity::class.java)
                     startActivity(loginIntent)
                     this@MainActivity.finish()
@@ -136,9 +141,9 @@ class MainActivity : AppCompatActivity(), ExportAlertDialogFragment.ExportAlertD
         lifecycleScope.launch {
             user =  preferenceDataStoreHelper.getFirstPreference(USER,"")
         }
-
-        val serviceIntent = Intent(this, AuthService::class.java)
+        val serviceIntent = Intent(this@MainActivity, AuthService::class.java)
         startService(serviceIntent)
+
     }
 
     fun getNetworkState(): ConnectivityObserver.NetworkState {
diff --git a/app/src/main/java/com/example/abe/ui/login/LoginActivity.kt b/app/src/main/java/com/example/abe/ui/login/LoginActivity.kt
index 8204582..b562f91 100644
--- a/app/src/main/java/com/example/abe/ui/login/LoginActivity.kt
+++ b/app/src/main/java/com/example/abe/ui/login/LoginActivity.kt
@@ -50,11 +50,11 @@ class LoginActivity : AppCompatActivity(), LoginResultCallback {
         lifecycleScope.launch {
             preferenceDataStoreHelper.putPreference(TOKEN, loginResponse.token)
             preferenceDataStoreHelper.putPreference(USER, email)
+            val intent = Intent(this@LoginActivity, MainActivity::class.java)
+            startActivity(intent)
+            finish()
         }
 
-        val intent = Intent(this, MainActivity::class.java)
-        startActivity(intent)
-        finish()
     }
 
     override fun onFailure(errorMessage: String) {
-- 
GitLab