Skip to content

Commit 2d1b273

Browse files
committed
Use JSON encoding for deeplink parameters
1 parent 38dbdd8 commit 2d1b273

File tree

2 files changed

+16
-5
lines changed

2 files changed

+16
-5
lines changed

Adjust/src/com/adjust/sdk/PackageBuilder.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
public class PackageBuilder {
2323

24-
private Context context;
24+
private Context context;
2525

2626
// general
2727
private String appToken;
@@ -219,7 +219,7 @@ public ActivityPackage buildRevenuePackage() {
219219

220220
public ActivityPackage buildReattributionPackage() {
221221
Map<String, String> parameters = getDefaultParameters();
222-
addMap(parameters, "deeplink_parameters", deepLinkParameters);
222+
addMapJson(parameters, "deeplink_parameters", deepLinkParameters);
223223

224224
ActivityPackage reattributionPackage = getDefaultActivityPackage();
225225
reattributionPackage.setPath("/reattribute");
@@ -273,7 +273,7 @@ private Map<String, String> getDefaultParameters() {
273273
private void injectEventParameters(Map<String, String> parameters) {
274274
addInt(parameters, "event_count", eventCount);
275275
addString(parameters, "event_token", eventToken);
276-
addMap(parameters, "params", callbackParameters);
276+
addMapBase64(parameters, "params", callbackParameters);
277277
}
278278

279279
private String getAmountString() {
@@ -329,7 +329,7 @@ private void addDuration(Map<String, String> parameters, String key, long durati
329329
addInt(parameters, key, durationInSeconds);
330330
}
331331

332-
private void addMap(Map<String, String> parameters, String key, Map<String, String> map) {
332+
private void addMapBase64(Map<String, String> parameters, String key, Map<String, String> map) {
333333
if (null == map) {
334334
return;
335335
}
@@ -340,4 +340,15 @@ private void addMap(Map<String, String> parameters, String key, Map<String, Stri
340340

341341
addString(parameters, key, encodedMap);
342342
}
343+
344+
private void addMapJson(Map<String, String> parameters, String key, Map<String, String> map) {
345+
if (null == map) {
346+
return;
347+
}
348+
349+
JSONObject jsonObject = new JSONObject(map);
350+
String jsonString = jsonObject.toString();
351+
352+
addString(parameters, key, jsonString);
353+
}
343354
}

Adjust/test/src/com/adjust/sdk/test/TestActivityHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -634,7 +634,7 @@ public void testOpenUrl() {
634634

635635
// check that deep link parameters contains the base64 with the 2 keys
636636
assertEquals(activityPackage.getExtendedString(),
637-
"eyJmb28iOiJiYXIiLCJrZXkiOiJ2YWx1ZSJ9", parameters.get("deeplink_parameters"));
637+
"{\"foo\":\"bar\",\"key\":\"value\"}", parameters.get("deeplink_parameters"));
638638

639639
// check that added and set both session and reattribution package
640640
assertTrue(mockLogger.toString(), mockLogger.containsTestMessage("PackageHandler addPackage"));

0 commit comments

Comments
 (0)