diff --git a/android-core/src/main/java/com/mparticle/identity/IdentityApiRequest.java b/android-core/src/main/java/com/mparticle/identity/IdentityApiRequest.java index 7c078c18f..9f35f9b25 100644 --- a/android-core/src/main/java/com/mparticle/identity/IdentityApiRequest.java +++ b/android-core/src/main/java/com/mparticle/identity/IdentityApiRequest.java @@ -242,9 +242,9 @@ public String convertString(){ } public String objectToHash() { - String input =this.toString(); + String input = this.toString(); try { - MessageDigest md = MessageDigest.getInstance("SHA-256"); + MessageDigest md = MessageDigest.getInstance("SHA-1"); byte[] hashBytes = md.digest(input.getBytes()); StringBuilder hexString = new StringBuilder(); for (byte b : hashBytes) { @@ -253,8 +253,9 @@ public String objectToHash() { hexString.append(hex); } return hexString.toString().substring(0, 16); // Shorten to first 16 characters - } catch (NoSuchAlgorithmException e) { - throw new RuntimeException(e); + } catch (Exception e) { + Logger.error("Exception while initializing SHA-1 on device:" + e); } + return null; } } \ No newline at end of file diff --git a/android-core/src/main/java/com/mparticle/identity/MParticleIdentityClientImpl.java b/android-core/src/main/java/com/mparticle/identity/MParticleIdentityClientImpl.java index e610629cc..7ab5858fa 100644 --- a/android-core/src/main/java/com/mparticle/identity/MParticleIdentityClientImpl.java +++ b/android-core/src/main/java/com/mparticle/identity/MParticleIdentityClientImpl.java @@ -172,7 +172,8 @@ private void catchRequest(IdentityApiRequest request, IdentityHttpResponse ident identityCacheTime = System.currentTimeMillis(); mConfigManager.saveIdentityCacheTime(identityCacheTime); } - String key = request.objectToHash() + callType; + String key = (request.objectToHash() == null) ? null : request.objectToHash() + callType; + identityCacheArray.put(key, identityHttpResponse); mConfigManager.saveIdentityCache(key, identityHttpResponse);