setEUConsent method

Future<void> setEUConsent()

Implementation

Future<void> setEUConsent() async {
  /// Create debug params, see https://developers.google.cn/admob/flutter/eu-consent#testing
  /// For example:
  /// ConsentDebugSettings debugSettings = ConsentDebugSettings(
  ///     debugGeography: DebugGeography.debugGeographyEea,
  ///     testIdentifiers: ['1FA151D7EFD6EA233C2AD95E1FB9175C'],
  /// );
  /// final params = ConsentRequestParameters(
  ///   consentDebugSettings: debugSettings,
  /// );
  /// To get the the device id in testIdentifiers, search `ConsentDebugSettings.Builder().addTestDeviceHashedId` in terminal.
  final params = ConsentRequestParameters();
  ConsentInformation.instance.requestConsentInfoUpdate(params, () async {
    final isConsentFormAvailable =
        await ConsentInformation.instance.isConsentFormAvailable();
    if (isConsentFormAvailable) {
      final consentStatus =
          await ConsentInformation.instance.getConsentStatus();
      debugPrint('πŸ‘‰πŸ‘‰πŸ‘‰πŸ‘‰πŸ‘‰ consent status = $consentStatus');
      if (consentStatus == ConsentStatus.required) {
        ConsentForm.loadConsentForm(
          (ConsentForm consentForm) async {
            var status = await ConsentInformation.instance.getConsentStatus();
            if (status == ConsentStatus.required) {
              consentForm.show(
                (_) {},
              );
            }
          },
          (_) {},
        );
      }
    } else {
      debugPrint('πŸ‘‰πŸ‘‰πŸ‘‰πŸ‘‰πŸ‘‰ consent form is unavailable');
    }
  }, (_) {});
}