@@ -77,7 +77,7 @@ public void initializeWithApiKey(String apiKey, ReadableMap configReadableMap, S
7777 }
7878
7979 IterableApi .initialize (reactContext , apiKey , configBuilder .build ());
80- IterableApi .getInstance ().setDeviceAttribute ("reactNativeSDKVersion" ,version );
80+ IterableApi .getInstance ().setDeviceAttribute ("reactNativeSDKVersion" , version );
8181 }
8282
8383 @ ReactMethod
@@ -163,12 +163,20 @@ public void trackPushOpenWithCampaignId(Integer campaignId, Integer templateId,
163163 @ ReactMethod
164164 public void updateSubscriptions (ReadableArray emailListIds , ReadableArray unsubscribedChannelIds , ReadableArray unsubscribedMessageTypeIds , ReadableArray subscribedMessageTypeIds , Integer campaignId , Integer templateId ) {
165165 IterableLogger .v (TAG , "updateSubscriptions" );
166+ Integer finalCampaignId = null , finalTemplateId = null ;
167+ if (campaignId > 0 ) {
168+ finalCampaignId = campaignId ;
169+ }
170+ if (templateId > 0 ) {
171+ finalTemplateId = templateId ;
172+ }
166173 IterableApi .getInstance ().updateSubscriptions (readableArrayToIntegerArray (emailListIds ),
167174 readableArrayToIntegerArray (unsubscribedChannelIds ),
168175 readableArrayToIntegerArray (unsubscribedMessageTypeIds ),
169176 readableArrayToIntegerArray (subscribedMessageTypeIds ),
170- campaignId ,
171- templateId );
177+ finalCampaignId ,
178+ finalTemplateId
179+ );
172180 }
173181
174182 @ ReactMethod
@@ -312,6 +320,9 @@ public void setInAppShowResponse(Integer number) {
312320 // endregion
313321
314322 private static Integer [] readableArrayToIntegerArray (ReadableArray array ) {
323+ if (array == null ) {
324+ return null ;
325+ }
315326 Integer [] integers = new Integer [array .size ()];
316327 for (int i = 0 ; i < array .size (); i ++) {
317328 integers [i ] = array .getInt (i );
0 commit comments