ILRD
With Impression Level revenue data (ILRD), you can track and collect ad data.
|
Parent class |
Method |
|
InterstitialAdEventListener |
|
|
AppOpenAdEventListener |
|
|
RewardedAdEventListener |
|
|
BannerAd |
|
Each of these methods has the ImpressionData parameter with a single method, getRawData. This method returns a JSON string with ILRD (see the table below).
Note
The onAdImpression / onImpression method is triggered only after the ad impression is recorded.
void _setAdEventListener(RewardedAd ad) {
ad.setAdEventListener(
eventListener: RewardedAdEventListener(
// ... other methods
onAdImpression: (ImpressionData impressionData) {
final rawData = impressionData.getRawData();
debugPrint('[ILRD] Raw: $rawData');
try {
final json = jsonDecode(rawData) as Map<String, dynamic>;
debugPrint('[ILRD] ad_unit_id: ${json['ad_unit_id']}');
debugPrint('[ILRD] adType: ${json['adType']}');
debugPrint('[ILRD] currency: ${json['currency']}');
debugPrint('[ILRD] revenue: ${json['revenue']}');
debugPrint('[ILRD] revenueUSD: ${json['revenueUSD']}');
debugPrint('[ILRD] precision: ${json['precision']}');
final network = json['network'] as Map<String, dynamic>?;
if (network != null) {
debugPrint('[ILRD] network.name: ${network['name']}');
debugPrint('[ILRD] network.ad_unit_id: ${network['ad_unit_id']}');
}
} catch (e) {
debugPrint('[ILRD] Parse error: $e');
}
},
),
);
}
Available data
You can parse rawData to obtain the following information:
|
Key |
Type |
Description |
|
|
string |
A unique ad unit ID. |
|
|
string |
The type of an ad:
|
|
|
string |
The currency that an ad network uses. |
|
|
string |
Revenue from an impression in the ad network currency. The currency specified in the |
|
|
string |
Revenue from an impression, converted to USD. |
|
|
string |
The accuracy of the
|
|
|
string |
The name of the ad network that served the impression. |
|
|
string |
A unique ad unit ID in the network that served the ad. |