@@ -209,7 +209,7 @@ ActivityPackage buildSubscriptionPackage(AdjustPlayStoreSubscription subscriptio
209209 return subscriptionPackage ;
210210 }
211211
212- ActivityPackage buildVerificationPackage (AdjustPurchase purchase , OnPurchaseVerificationFinishedListener callback ) {
212+ ActivityPackage buildVerificationPackage (AdjustPlayStorePurchase purchase , OnPurchaseVerificationFinishedListener callback ) {
213213 Map <String , String > parameters = getVerificationParameters (purchase );
214214 ActivityPackage purchaseVerificationPackage = getDefaultActivityPackage (ActivityKind .PURCHASE_VERIFICATION );
215215 purchaseVerificationPackage .setPath ("/verify" );
@@ -220,6 +220,17 @@ ActivityPackage buildVerificationPackage(AdjustPurchase purchase, OnPurchaseVeri
220220 return purchaseVerificationPackage ;
221221 }
222222
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+
223234 private Map <String , String > getSessionParameters () {
224235 Map <String , String > parameters = new HashMap <String , String >();
225236
@@ -1050,7 +1061,7 @@ private Map<String, String> getSubscriptionParameters(AdjustPlayStoreSubscriptio
10501061 return parameters ;
10511062 }
10521063
1053- private Map <String , String > getVerificationParameters (AdjustPurchase purchase ) {
1064+ private Map <String , String > getVerificationParameters (AdjustPlayStorePurchase purchase ) {
10541065 Map <String , String > parameters = new HashMap <String , String >();
10551066
10561067 deviceInfo .reloadOtherDeviceInfoParams (adjustConfig , coppaEnabled , logger );
@@ -1140,6 +1151,95 @@ private Map<String, String> getVerificationParameters(AdjustPurchase purchase) {
11401151 return parameters ;
11411152 }
11421153
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+
11431243 private ActivityPackage getDefaultActivityPackage (ActivityKind activityKind ) {
11441244 ActivityPackage activityPackage = new ActivityPackage (activityKind );
11451245 activityPackage .setClientSdk (deviceInfo .clientSdk );
0 commit comments