@@ -209,7 +209,7 @@ ActivityPackage buildSubscriptionPackage(AdjustPlayStoreSubscription subscriptio
209
209
return subscriptionPackage ;
210
210
}
211
211
212
- ActivityPackage buildVerificationPackage (AdjustPurchase purchase , OnPurchaseVerificationFinishedListener callback ) {
212
+ ActivityPackage buildVerificationPackage (AdjustPlayStorePurchase purchase , OnPurchaseVerificationFinishedListener callback ) {
213
213
Map <String , String > parameters = getVerificationParameters (purchase );
214
214
ActivityPackage purchaseVerificationPackage = getDefaultActivityPackage (ActivityKind .PURCHASE_VERIFICATION );
215
215
purchaseVerificationPackage .setPath ("/verify" );
@@ -220,6 +220,17 @@ ActivityPackage buildVerificationPackage(AdjustPurchase purchase, OnPurchaseVeri
220
220
return purchaseVerificationPackage ;
221
221
}
222
222
223
+ ActivityPackage buildVerificationPackage (AdjustEvent event , OnPurchaseVerificationFinishedListener callback ) {
224
+ Map <String , String > parameters = getVerificationParameters (event );
225
+ ActivityPackage purchaseVerificationPackage = getDefaultActivityPackage (ActivityKind .PURCHASE_VERIFICATION );
226
+ purchaseVerificationPackage .setPath ("/verify" );
227
+ purchaseVerificationPackage .setSuffix ("" );
228
+ purchaseVerificationPackage .setPurchaseVerificationCallback (callback );
229
+
230
+ purchaseVerificationPackage .setParameters (parameters );
231
+ return purchaseVerificationPackage ;
232
+ }
233
+
223
234
private Map <String , String > getSessionParameters () {
224
235
Map <String , String > parameters = new HashMap <String , String >();
225
236
@@ -1050,7 +1061,7 @@ private Map<String, String> getSubscriptionParameters(AdjustPlayStoreSubscriptio
1050
1061
return parameters ;
1051
1062
}
1052
1063
1053
- private Map <String , String > getVerificationParameters (AdjustPurchase purchase ) {
1064
+ private Map <String , String > getVerificationParameters (AdjustPlayStorePurchase purchase ) {
1054
1065
Map <String , String > parameters = new HashMap <String , String >();
1055
1066
1056
1067
deviceInfo .reloadOtherDeviceInfoParams (adjustConfig , coppaEnabled , logger );
@@ -1140,6 +1151,95 @@ private Map<String, String> getVerificationParameters(AdjustPurchase purchase) {
1140
1151
return parameters ;
1141
1152
}
1142
1153
1154
+ private Map <String , String > getVerificationParameters (AdjustEvent event ) {
1155
+ Map <String , String > parameters = new HashMap <String , String >();
1156
+
1157
+ deviceInfo .reloadOtherDeviceInfoParams (adjustConfig , coppaEnabled , logger );
1158
+
1159
+ // Check if plugin is used and if yes, add read parameters.
1160
+ if (deviceInfo .imeiParameters != null ) {
1161
+ parameters .putAll (deviceInfo .imeiParameters );
1162
+ }
1163
+
1164
+ // Check if oaid plugin is used and if yes, add the parameter
1165
+ if (deviceInfo .oaidParameters != null ) {
1166
+ parameters .putAll (deviceInfo .oaidParameters );
1167
+ }
1168
+
1169
+ // Device identifiers.
1170
+ deviceInfo .reloadPlayIds (adjustConfig , coppaEnabled , playStoreKidsAppEnabled );
1171
+ PackageBuilder .addString (parameters , "android_uuid" , activityStateCopy .uuid );
1172
+ PackageBuilder .addString (parameters , "gps_adid" , deviceInfo .playAdId );
1173
+ PackageBuilder .addLong (parameters , "gps_adid_attempt" , deviceInfo .playAdIdAttempt );
1174
+ PackageBuilder .addString (parameters , "gps_adid_src" , deviceInfo .playAdIdSource );
1175
+ PackageBuilder .addBoolean (parameters , "tracking_enabled" , deviceInfo .isTrackingEnabled );
1176
+ PackageBuilder .addString (parameters , "fire_adid" , deviceInfo .fireAdId );
1177
+ PackageBuilder .addBoolean (parameters , "fire_tracking_enabled" , deviceInfo .fireTrackingEnabled );
1178
+
1179
+ if (!containsPlayIds (parameters ) && !containsFireIds (parameters )) {
1180
+ logger .warn ("Google Advertising ID or Fire Advertising ID not detected, " +
1181
+ "fallback to non Google Play and Fire identifiers will take place" );
1182
+ deviceInfo .reloadNonPlayIds (adjustConfig , coppaEnabled , playStoreKidsAppEnabled );
1183
+ PackageBuilder .addString (parameters , "android_id" , deviceInfo .androidId );
1184
+ }
1185
+
1186
+ // Rest of the parameters.
1187
+ PackageBuilder .addString (parameters , "api_level" , deviceInfo .apiLevel );
1188
+ PackageBuilder .addString (parameters , "app_token" , adjustConfig .appToken );
1189
+ PackageBuilder .addString (parameters , "app_version" , deviceInfo .appVersion );
1190
+ PackageBuilder .addBoolean (parameters , "attribution_deeplink" , true );
1191
+ PackageBuilder .addLong (parameters , "connectivity_type" , deviceInfo .connectivityType );
1192
+ PackageBuilder .addString (parameters , "country" , deviceInfo .country );
1193
+ PackageBuilder .addString (parameters , "cpu_type" , deviceInfo .abi );
1194
+ PackageBuilder .addDateInMilliseconds (parameters , "created_at" , createdAt );
1195
+ PackageBuilder .addString (parameters , "default_tracker" , adjustConfig .defaultTracker );
1196
+ PackageBuilder .addBoolean (parameters , "needs_cost" , adjustConfig .needsCost );
1197
+ PackageBuilder .addString (parameters , "device_manufacturer" , deviceInfo .deviceManufacturer );
1198
+ PackageBuilder .addString (parameters , "device_name" , deviceInfo .deviceName );
1199
+ PackageBuilder .addString (parameters , "device_type" , deviceInfo .deviceType );
1200
+ PackageBuilder .addLong (parameters , "ui_mode" , deviceInfo .uiMode );
1201
+ PackageBuilder .addString (parameters , "display_height" , deviceInfo .displayHeight );
1202
+ PackageBuilder .addString (parameters , "display_width" , deviceInfo .displayWidth );
1203
+ PackageBuilder .addString (parameters , "environment" , adjustConfig .environment );
1204
+ PackageBuilder .addString (parameters , "external_device_id" , adjustConfig .externalDeviceId );
1205
+ PackageBuilder .addString (parameters , "fb_id" , deviceInfo .fbAttributionId );
1206
+ PackageBuilder .addString (parameters , "hardware_name" , deviceInfo .hardwareName );
1207
+ PackageBuilder .addString (parameters , "installed_at" , deviceInfo .appInstallTime );
1208
+ PackageBuilder .addString (parameters , "language" , deviceInfo .language );
1209
+ PackageBuilder .addDuration (parameters , "last_interval" , activityStateCopy .lastInterval );
1210
+ PackageBuilder .addString (parameters , "mcc" , deviceInfo .mcc );
1211
+ PackageBuilder .addString (parameters , "mnc" , deviceInfo .mnc );
1212
+ PackageBuilder .addBoolean (parameters , "needs_response_details" , true );
1213
+ PackageBuilder .addString (parameters , "os_build" , deviceInfo .buildName );
1214
+ PackageBuilder .addString (parameters , "os_name" , deviceInfo .osName );
1215
+ PackageBuilder .addString (parameters , "os_version" , deviceInfo .osVersion );
1216
+ PackageBuilder .addString (parameters , "package_name" , deviceInfo .packageName );
1217
+ PackageBuilder .addString (parameters , "push_token" , activityStateCopy .pushToken );
1218
+ PackageBuilder .addString (parameters , "screen_density" , deviceInfo .screenDensity );
1219
+ PackageBuilder .addString (parameters , "screen_format" , deviceInfo .screenFormat );
1220
+ PackageBuilder .addString (parameters , "screen_size" , deviceInfo .screenSize );
1221
+ PackageBuilder .addLong (parameters , "session_count" , activityStateCopy .sessionCount );
1222
+ PackageBuilder .addDuration (parameters , "session_length" , activityStateCopy .sessionLength );
1223
+ PackageBuilder .addLong (parameters , "subsession_count" , activityStateCopy .subsessionCount );
1224
+ PackageBuilder .addDuration (parameters , "time_spent" , activityStateCopy .timeSpent );
1225
+ PackageBuilder .addString (parameters , "updated_at" , deviceInfo .appUpdateTime );
1226
+
1227
+ // purchase verification specific parameters
1228
+ PackageBuilder .addString (parameters , "product_id" , event .getProductId ());
1229
+ PackageBuilder .addString (parameters , "purchase_token" , event .getPurchaseToken ());
1230
+ PackageBuilder .addString (parameters , "event_token" , event .getEventToken ());
1231
+ PackageBuilder .addString (parameters , "currency" , event .getCurrency ());
1232
+ PackageBuilder .addDouble (parameters , "revenue" , event .getRevenue ());
1233
+
1234
+ // google play games
1235
+ PackageBuilder .addBoolean (parameters , "gpg_pc_enabled" , deviceInfo .isGooglePlayGamesForPC ? true : null );
1236
+
1237
+ injectFeatureFlagsWithParameters (parameters );
1238
+
1239
+ checkDeviceIds (parameters );
1240
+ return parameters ;
1241
+ }
1242
+
1143
1243
private ActivityPackage getDefaultActivityPackage (ActivityKind activityKind ) {
1144
1244
ActivityPackage activityPackage = new ActivityPackage (activityKind );
1145
1245
activityPackage .setClientSdk (deviceInfo .clientSdk );
0 commit comments