@@ -28,7 +28,7 @@ fun SharedPreferences.deleteEncryptedSharedPreference(context: Context, filename
28
28
val deleted = sharedPrefsFile.delete()
29
29
Log .d(tag, " resetStorage() Shared prefs file deleted: $deleted ; path: ${sharedPrefsFile.absolutePath} " )
30
30
} else {
31
- Log .d(tag," resetStorage() Shared prefs file non-existent; path: ${sharedPrefsFile.absolutePath} " )
31
+ Log .d(tag, " resetStorage() Shared prefs file non-existent; path: ${sharedPrefsFile.absolutePath} " )
32
32
}
33
33
34
34
val keyStore = KeyStore .getInstance(ANDROID_KEYSTORE_NAME )
@@ -41,7 +41,7 @@ fun SharedPreferences.deleteEncryptedSharedPreference(context: Context, filename
41
41
42
42
fun createEncryptedSharedPrefKeyStoreWithRetry (context : Context , fileName : String , keystoreAlias : String ): SharedPreferences ? {
43
43
val firstAttempt = createEncryptedSharedPrefsKeyStore(context = context, fileName = fileName, keystoreAlias = keystoreAlias)
44
- return if (firstAttempt != null ) {
44
+ return if (firstAttempt != null ) {
45
45
firstAttempt
46
46
} else {
47
47
context.getSharedPreferences(fileName, Context .MODE_PRIVATE ).deleteEncryptedSharedPreference(
@@ -61,25 +61,26 @@ fun createEncryptedSharedPrefsKeyStore(context: Context, fileName: String, keyst
61
61
.setEncryptionPaddings(ENCRYPTION_PADDING_NONE )
62
62
.build()
63
63
64
- val keys = try {
65
- MasterKeys .getOrCreate(keySpec)
66
- } catch (ex: Exception ) {
67
- // clear corrupted store, contents will be lost
68
- context.getSharedPreferences(fileName, Context .MODE_PRIVATE ).deleteEncryptedSharedPreference(
69
- context = context,
70
- filename = fileName,
71
- keystoreAlias = keystoreAlias )
72
- MasterKeys .getOrCreate(keySpec)
73
- }
74
64
return try {
65
+ val keys = try {
66
+ MasterKeys .getOrCreate(keySpec)
67
+ } catch (ex: Exception ) {
68
+ // clear corrupted store, contents will be lost
69
+ context.getSharedPreferences(fileName, Context .MODE_PRIVATE ).deleteEncryptedSharedPreference(
70
+ context = context,
71
+ filename = fileName,
72
+ keystoreAlias = keystoreAlias)
73
+ MasterKeys .getOrCreate(keySpec)
74
+ }
75
+
75
76
EncryptedSharedPreferences .create(
76
77
fileName,
77
78
keys,
78
79
context,
79
80
EncryptedSharedPreferences .PrefKeyEncryptionScheme .AES256_SIV ,
80
81
EncryptedSharedPreferences .PrefValueEncryptionScheme .AES256_GCM
81
82
)
82
- } catch (ex: Exception ) {
83
+ } catch (ex: Exception ) {
83
84
null
84
85
}
85
86
}
0 commit comments