From 8101663dd0ecd11e4992372bf4362e7b050458a5 Mon Sep 17 00:00:00 2001 From: Mathieu Moran Date: Wed, 12 Aug 2026 15:23:53 -0400 Subject: [PATCH] fix: plain SharedPreferences for credentials (EncryptedSharedPreferences crashed on Pixel) - CredentialStore now uses getSharedPreferences instead of EncryptedSharedPreferences - Still sandboxed by Android app isolation (other apps can't read it) --- .../main/java/com/yarisobd/app/data/CredentialStore.kt | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/android/app/src/main/java/com/yarisobd/app/data/CredentialStore.kt b/android/app/src/main/java/com/yarisobd/app/data/CredentialStore.kt index 47446ac..36a2b09 100644 --- a/android/app/src/main/java/com/yarisobd/app/data/CredentialStore.kt +++ b/android/app/src/main/java/com/yarisobd/app/data/CredentialStore.kt @@ -1,8 +1,6 @@ package com.yarisobd.app.data import android.content.Context -import androidx.security.crypto.EncryptedSharedPreferences -import androidx.security.crypto.MasterKey object CredentialStore { private const val PREFS = "yaris_creds" @@ -10,12 +8,8 @@ object CredentialStore { private const val KEY_DEVICE_NAME = "device_name" private const val KEY_API_KEY = "api_key" - private fun prefs(context: Context) = EncryptedSharedPreferences.create( - context, PREFS, - MasterKey.Builder(context).setKeyScheme(MasterKey.KeyScheme.AES256_GCM).build(), - EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV, - EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM - ) + private fun prefs(context: Context) = + context.getSharedPreferences(PREFS, Context.MODE_PRIVATE) fun getServerUrl(context: Context): String = prefs(context).getString(KEY_SERVER_URL, "") ?: "" fun getDeviceName(context: Context): String = prefs(context).getString(KEY_DEVICE_NAME, "") ?: ""