@@ -308,6 +308,10 @@ public class OneSignalUserManagerImpl: NSObject, OneSignalUserManager {
308
308
if let user = _user {
309
309
guard user. identityModel. externalId != externalId || externalId == nil else {
310
310
OneSignalLog . onesignalLog ( . LL_VERBOSE, message: " OneSignalUserManager.createNewUser: not creating new user due to logging into the same user.) " )
311
+ if externalId != nil , token != nil {
312
+ // save the jwtToken, it can be updated
313
+ user. identityModel. jwtBearerToken = token
314
+ }
311
315
return user
312
316
}
313
317
}
@@ -386,17 +390,19 @@ public class OneSignalUserManagerImpl: NSObject, OneSignalUserManager {
386
390
}
387
391
OneSignalLog . onesignalLog ( . LL_VERBOSE, message: " OneSignalUserManager internal _login called with externalId: \( externalId ?? " nil " ) " )
388
392
389
- // If have token, validate token. Account for this being a requirement.
390
- // Logging into an identified user from an anonymous user
393
+ // Logging into an identified user from an anonymous user, if JWT is not ON
391
394
if let externalId = externalId,
392
395
let user = _user,
393
- user. isAnonymous {
396
+ user. isAnonymous,
397
+ jwtConfig. isRequired != true
398
+ {
394
399
user. identityModel. jwtBearerToken = token
395
400
identifyUser ( externalId: externalId, currentUser: user)
396
401
return self . user
397
402
}
398
403
399
- // Logging into anon -> anon, identified -> anon, identified -> identified, or nil -> any user
404
+ // JWT Off: Logging into anon -> anon, identified -> anon, identified -> identified, or nil -> any user
405
+ // JWT On: All
400
406
return createNewUser ( externalId: externalId, token: token)
401
407
}
402
408
0 commit comments