Skip to content

Commit

Permalink
Merge branch 'master' into MOB-6832-AuthDecode-crash-issue-fix
Browse files Browse the repository at this point in the history
  • Loading branch information
Ayyanchira authored Mar 15, 2024
2 parents 765298b + ed4b68d commit e4055d2
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 12 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ To learn more about various SDK features, read:
- [Customizing Mobile Inbox on Android](https://support.iterable.com/hc/articles/360039189931)
- [Android App Links](https://support.iterable.com/hc/articles/360035127392)
- [Deep Links in Push Notifications](https://support.iterable.com/hc/articles/360035453971)
- [Embedded Messages with Iterable's Android SDK](https://support.iterable.com/hc/articles/23061877893652)

## Sample projects

Expand Down
2 changes: 1 addition & 1 deletion iterableapi-ui/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ dependencies {
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'com.google.android.flexbox:flexbox:3.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation "com.github.bumptech.glide:glide:4.8.0"
implementation "com.github.bumptech.glide:glide:4.16.0"
implementation 'com.google.android.material:material:1.2.0'

testImplementation 'junit:junit:4.13.2'
Expand Down
35 changes: 24 additions & 11 deletions iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,9 @@ IterableAuthManager getAuthManager() {

@Nullable
IterableKeychain getKeychain() {
if (_applicationContext == null) {
return null;
}
if (keychain == null) {
try {
keychain = new IterableKeychain(getMainActivityContext(), config.encryptionEnforced);
Expand All @@ -164,7 +167,7 @@ static void setNotificationIcon(Context context, String iconName) {
SharedPreferences sharedPref = context.getSharedPreferences(IterableConstants.NOTIFICATION_ICON_NAME, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString(IterableConstants.NOTIFICATION_ICON_NAME, iconName);
editor.commit();
editor.apply();
}

/**
Expand All @@ -174,8 +177,7 @@ static void setNotificationIcon(Context context, String iconName) {
*/
static String getNotificationIcon(Context context) {
SharedPreferences sharedPref = context.getSharedPreferences(IterableConstants.NOTIFICATION_ICON_NAME, Context.MODE_PRIVATE);
String iconName = sharedPref.getString(IterableConstants.NOTIFICATION_ICON_NAME, "");
return iconName;
return sharedPref.getString(IterableConstants.NOTIFICATION_ICON_NAME, "");
}

/**
Expand Down Expand Up @@ -423,6 +425,9 @@ private String getDeviceId() {
}

private void storeAuthData() {
if (_applicationContext == null) {
return;
}
IterableKeychain iterableKeychain = getKeychain();
if (iterableKeychain != null) {
iterableKeychain.saveEmail(_email);
Expand All @@ -434,6 +439,9 @@ private void storeAuthData() {
}

private void retrieveEmailAndUserId() {
if (_applicationContext == null) {
return;
}
IterableKeychain iterableKeychain = getKeychain();
if (iterableKeychain != null) {
_email = iterableKeychain.getEmail();
Expand Down Expand Up @@ -552,7 +560,6 @@ protected void registerDeviceToken(@Nullable String email, @Nullable String user
if (!checkSDKInitialization()) {
return;
}

if (deviceToken == null) {
IterableLogger.e(TAG, "registerDeviceToken: token is null");
return;
Expand Down Expand Up @@ -681,6 +688,9 @@ public IterableEmbeddedManager getEmbeddedManager() {
*/
@Nullable
public IterableAttributionInfo getAttributionInfo() {
if (_applicationContext == null) {
return null;
}
return IterableAttributionInfo.fromJSONObject(
IterableUtil.retrieveExpirableJsonObject(getPreferences(), IterableConstants.SHARED_PREFS_ATTRIBUTION_INFO_KEY)
);
Expand Down Expand Up @@ -915,6 +925,9 @@ public void getAndTrackDeepLink(@NonNull String uri, @NonNull IterableHelper.Ite
* @return whether or not the app link was handled
*/
public boolean handleAppLink(@NonNull String uri) {
if (_applicationContext == null) {
return false;
}
IterableLogger.printInfo();

if (IterableDeeplinkManager.isIterableDeeplink(uri)) {
Expand Down Expand Up @@ -1110,20 +1123,20 @@ public void updateUser(@NonNull JSONObject dataFields, Boolean mergeNestedObject
* user email or user ID is set before calling this method.
*/
public void registerForPush() {
if (!checkSDKInitialization()) {
return;
if (checkSDKInitialization()) {
IterablePushRegistrationData data = new IterablePushRegistrationData(_email, _userId, _authToken, getPushIntegrationName(), IterablePushRegistrationData.PushRegistrationAction.ENABLE);
IterablePushRegistration.executePushRegistrationTask(data);
}

IterablePushRegistrationData data = new IterablePushRegistrationData(_email, _userId, _authToken, getPushIntegrationName(), IterablePushRegistrationData.PushRegistrationAction.ENABLE);
IterablePushRegistration.executePushRegistrationTask(data);
}

/**
* Disables the device from push notifications
*/
public void disablePush() {
IterablePushRegistrationData data = new IterablePushRegistrationData(_email, _userId, _authToken, getPushIntegrationName(), IterablePushRegistrationData.PushRegistrationAction.DISABLE);
IterablePushRegistration.executePushRegistrationTask(data);
if (checkSDKInitialization()) {
IterablePushRegistrationData data = new IterablePushRegistrationData(_email, _userId, _authToken, getPushIntegrationName(), IterablePushRegistrationData.PushRegistrationAction.DISABLE);
IterablePushRegistration.executePushRegistrationTask(data);
}
}

/**
Expand Down

0 comments on commit e4055d2

Please sign in to comment.