Skip to content

Commit 02cb0c0

Browse files
committed
undo filter null changes for android
1 parent 328eae8 commit 02cb0c0

File tree

3 files changed

+2
-42
lines changed

3 files changed

+2
-42
lines changed

android/src/main/java/com/onesignal/flutter/OneSignalSerializer.java

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import java.util.HashMap;
2121
import java.util.Iterator;
2222
import java.util.List;
23-
import java.util.Map;
2423
import org.json.JSONArray;
2524
import org.json.JSONException;
2625
import org.json.JSONObject;
@@ -256,41 +255,4 @@ private static List<Object> convertJSONArrayToList(JSONArray array) throws JSONE
256255
static String setNullIfEmpty(String value) {
257256
return value.isEmpty() ? null : value;
258257
}
259-
260-
/**
261-
* Formats a properties map, recursively stripping null values.
262-
* The native SDK doesn't accept null values in properties currently.
263-
*/
264-
static HashMap<String, Object> formatPropertiesMap(Map<String, Object> map) {
265-
if (map == null) return null;
266-
267-
HashMap<String, Object> result = new HashMap<>();
268-
for (Map.Entry<String, Object> entry : map.entrySet()) {
269-
Object value = entry.getValue();
270-
if (value != null) {
271-
result.put(entry.getKey(), convertValue(value));
272-
}
273-
}
274-
return result;
275-
}
276-
277-
@SuppressWarnings("unchecked")
278-
private static Object convertValue(Object value) {
279-
if (value instanceof Map) {
280-
return formatPropertiesMap((Map<String, Object>) value);
281-
} else if (value instanceof List) {
282-
return stripNullValuesFromList((List<Object>) value);
283-
}
284-
return value;
285-
}
286-
287-
private static List<Object> stripNullValuesFromList(List<Object> list) {
288-
List<Object> result = new ArrayList<>();
289-
for (Object item : list) {
290-
if (item != null) {
291-
result.add(convertValue(item));
292-
}
293-
}
294-
return result;
295-
}
296258
}

android/src/main/java/com/onesignal/flutter/OneSignalUser.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,7 @@ private void getTags(MethodCall call, Result result) {
169169
private void trackEvent(MethodCall call, Result result) {
170170
String name = call.argument("name");
171171
Map<String, Object> properties = call.argument("properties");
172-
Map<String, Object> sanitizedProperties = OneSignalSerializer.formatPropertiesMap(properties);
173-
OneSignal.getUser().trackEvent(name, sanitizedProperties);
172+
OneSignal.getUser().trackEvent(name, properties);
174173
replySuccess(result, null);
175174
}
176175

test/mock_channel.dart

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -386,8 +386,7 @@ class OneSignalMockChannelController {
386386
case "OneSignal#trackEvent":
387387
final args = call.arguments as Map<dynamic, dynamic>;
388388
state.trackedEventName = args['name'] as String?;
389-
state.trackedEventProperties =
390-
args['properties'] as Map<dynamic, dynamic>?;
389+
state.trackedEventProperties = args['properties'] as Map<dynamic, dynamic>?;
391390
break;
392391
}
393392
}

0 commit comments

Comments
 (0)