Coder Social home page Coder Social logo

applovin-max-flutter's People

Contributors

alhiwatan avatar amondnet avatar applovinash avatar eli1stark avatar ipliu avatar ritamsarmah avatar thomasmso avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

applovin-max-flutter's Issues

Test ad not showing up

I'm getting these log messages on my test device.
I have set up the test device with the right GAID in the applovin dashboard .

D/AppLovinSdk(19383): ========== NETWORKS ==========
D/AppLovinSdk(19383): ---------- APPLOVIN_NETWORK ----------
D/AppLovinSdk(19383): Status - COMPLETE
D/AppLovinSdk(19383): SDK - 11.4.4
D/AppLovinSdk(19383): Adapter - 11.4.4
D/AppLovinSdk(19383): ========== AD UNITS ==========
D/AppLovinSdk(19383): ---------- First_AdUnit ----------
D/AppLovinSdk(19383): Identifier - [REDACTED]
D/AppLovinSdk(19383): Format - BANNER
D/AppLovinSdk(19383): ========== END ==========
D/AppLovinSdk(19383): [AppLovinMAX] Showing BANNER with ad unit id "[REDACTED]"
E/AppLovinSdk(19383): [AppLovinMAX] BANNER does not exist for ad unit id [REDACTED]

Any ideas what could be wrong?

MaxAdView not showing the Ad in iOS

MAX Plugin Version

2.0.0

Flutter Version

3.0.5

Device/Platform Info

iOS 15.3.1

Current Behavior

Simply not loading.
In the logs shows
[AppLovinSdk] [AppLovinMAX] Creating MaxAdView widget with Ad Unit ID: *******

Expected Behavior

No response

How to Reproduce

just place anywhere MaxAdView(adUnitId: _banner_ad_unit_id, adFormat: AdFormat.banner);

Additional Info

No response

Is the isInterstitialReady working properly?

MAX Plugin Version

2.3.1

Flutter Version

latest

Device/Platform Info

Latest Android

Current Behavior

Hi,

I experience that after calling AppLovinMAX.loadInterstitial(_interstitial_ad_unit_id) and getting a callback that says loaded the plugin will still not reply true to this call isReady = (await AppLovinMAX.isInterstitialReady(_interstitial_ad_unit_id))!

In the description it says that once the status is loaded the add is ready to be shown.

In my case 33% if the calls to await AppLovinMAX.isInterstitialReady(_interstitial_ad_unit_id) returns false.

Is this a bug, normal behavior or me misunderstanding something ?

Expected Behavior

No response

How to Reproduce

Run code live against bidding system and track results.

Additional Info

No response

banners ad as widget issue

MAX Plugin Version

2.0.0

Flutter Version

3.0.5

Device/Platform Info

Android 11

Current Behavior

rendering banners ad as widget not working, please fix the issue

Expected Behavior

No response

How to Reproduce

add banners ad as widget, ad will not show

Additional Info

No response

[AppLovinSdk] Current SDK version (11.5.5) is outdated. Please integrate the latest version of the AppLovin SDK (11.6.0). Doing so will improve your CPMs and ensure you have access to the latest revenue earning features.

Feature Description

applovin_max: ^2.3.1

[AppLovinSdk] Current SDK version (11.5.5) is outdated. Please integrate the latest version of the AppLovin SDK (11.6.0). Doing so will improve your CPMs and ensure you have access to the latest revenue earning features.

How to integrate the latest version of the AppLovin SDK (11.6.0)??

Breaks hot restart

This package appears to break hot restart in flutter. It hangs and does nothing when I attempt to.

_interstitialRetryAttempt is only reset if an ad is shown.

MAX Plugin Version

2.3.1

Flutter Version

2.18.5

Device/Platform Info

virtual

Current Behavior

Hi,

the _interstitialRetryAttempt is only reset if the ad is shown.
Is this correct?

Expected Behavior

I would expect _interstitialRetryAttempt to be reset in onAdLoadFailedCallback when it fails to load after 6 attempts.

How to Reproduce

Code review

Additional Info

No response

App crashes on using applovin and video_player in the same app

MAX Plugin Version

2.0.0

Flutter Version

3.3.0-0.1.pre

Device/Platform Info

Redmi Note 10 Pro

Current Behavior

App crashes after AppLovinMAX.initialize("my sdk key here"); The error screenshot as well as pubspec.yaml dependencies are given below.

image
image

Expected Behavior

No response

How to Reproduce

Use video_player: ^2.4.5 and applovin_max: ^2.0.0 in the same project.

Additional Info

No response

Ios pod install problem

-> Installing AppLovinSDK (11.4.2)
  > Copying AppLovinSDK from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/AppLovinSDK/11.4.2-119a0` to `Pods/AppLovinSDK`

-> Installing FBAudienceNetwork (6.9.0)
  > Copying FBAudienceNetwork from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/FBAudienceNetwork/6.9.0-83096` to `Pods/FBAudienceNetwork`

-> Installing FMDB (2.7.5)
  > Copying FMDB from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/FMDB/2.7.5-2ce00` to `Pods/FMDB`

-> Installing Firebase (8.15.0)
  > Copying Firebase from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/Firebase/8.15.0-5f819` to `Pods/Firebase`

-> Installing FirebaseCore (8.15.0)
  > Copying FirebaseCore from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/FirebaseCore/8.15.0-5743c` to `Pods/FirebaseCore`

-> Installing FirebaseCoreDiagnostics (8.15.0)
  > Copying FirebaseCoreDiagnostics from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/FirebaseCoreDiagnostics/8.15.0-92e07` to `Pods/FirebaseCoreDiagnostics`

-> Installing Flutter (1.0.0)

-> Installing Google-Mobile-Ads-SDK (8.13.0)
  > Copying Google-Mobile-Ads-SDK from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/Google-Mobile-Ads-SDK/8.13.0-05e5d` to `Pods/Google-Mobile-Ads-SDK`

-> Installing GoogleAppMeasurement (8.15.0)
  > Copying GoogleAppMeasurement from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/GoogleAppMeasurement/8.15.0-4c19f` to `Pods/GoogleAppMeasurement`

-> Installing GoogleDataTransport (9.1.4)
  > Copying GoogleDataTransport from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/GoogleDataTransport/9.1.4-5fffe` to `Pods/GoogleDataTransport`

-> Installing GoogleUserMessagingPlatform (2.0.0)
  > Copying GoogleUserMessagingPlatform from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/GoogleUserMessagingPlatform/2.0.0-ab890` to `Pods/GoogleUserMessagingPlatform`

-> Installing GoogleUtilities (7.7.0)
  > Copying GoogleUtilities from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/GoogleUtilities/7.7.0-e0913` to `Pods/GoogleUtilities`

-> Installing PromisesObjC (2.1.1)
  > Copying PromisesObjC from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/PromisesObjC/2.1.1-ab77f` to `Pods/PromisesObjC`

-> Installing Reachability (3.2)
  > Copying Reachability from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/Reachability/3.2-33e18` to `Pods/Reachability`

-> Installing Toast (4.0.0)
  > Copying Toast from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/Toast/4.0.0-91b39` to `Pods/Toast`

-> Installing applovin_max (1.0.3)

-> Installing connectivity (0.0.1)

-> Installing facebook_audience_network (0.0.1)

-> Installing firebase_core (1.17.0)

-> Installing flutter_custom_tabs (0.0.1)

-> Installing flutter_fgbg (0.0.1)

-> Installing fluttertoast (0.0.2)

-> Installing google_mobile_ads (0.0.1)

-> Installing in_app_review (0.2.0)

-> Installing nanopb (2.30908.0)
  > Copying nanopb from `/Users/macc/Library/Caches/CocoaPods/Pods/Release/nanopb/2.30908.0-a0ba3` to `Pods/nanopb`

-> Installing path_provider_ios (0.0.1)

-> Installing share (0.0.1)

-> Installing sqflite (0.0.2)

-> Installing url_launcher_ios (0.0.1)
  - Running pre install hooks
[!] The 'Pods-Runner' target has transitive dependencies that include statically linked binaries: (/Users/macc/StudioProjects/test1/ios/Pods/AppLovinSDK/applovin-ios-sdk-11.4.2/AppLovinSDK.xcframework)

/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/target_validator.rb:84:in `block (2 levels) in verify_no_static_framework_transitive_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/target_validator.rb:74:in `each_key'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/target_validator.rb:74:in `block in verify_no_static_framework_transitive_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/target_validator.rb:73:in `each'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/target_validator.rb:73:in `verify_no_static_framework_transitive_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/target_validator.rb:38:in `validate!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:597:in `validate_targets'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:163:in `install!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/command/install.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/claide-1.1.0/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'

Error output from CocoaPods:

[!] Automatically assigning platform `iOS` with version `9.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.

Error running pod install
Error launching application on iPhone 8.

E/FrameEvents(17819): updateAcquireFence: Did not find frame.

MAX Plugin Version

2.0.0

Flutter Version

3.3.0-0.5.pre

Device/Platform Info

Android 12

Current Behavior

Showing a banner ad by widget method gives weird log which constantly keeps printing indefinitely. Removing the banner ad and hot reloading immediately stops the log.
E/FrameEvents(17819): updateAcquireFence: Did not find frame.

Screenshot:
image

Expected Behavior

no unwanted log

How to Reproduce

MaxAdView( adUnitId: _bannerAdunitId, adFormat: AdFormat.banner ),

Just show banner this way and log goes buzzerk.

Additional Info

Even created new fresh project and it still produces this behavior.

can't close ads on tvbox

MAX Plugin Version

2.2.0

Flutter Version

3.3.5

Device/Platform Info

Android TV

Current Behavior

ads cannot be closed with tvbox control

Expected Behavior

Close ads by pressing "x" with tv box control

How to Reproduce

  1. Show ads
  2. Finish
  3. Could not close

Additional Info

No response

test mode not work

Feature Description

android only

Version

applovin_max: ^2.3.2
Flutter (Channel stable, 3.3.9, on macOS 12.6 21G115 darwin-arm

my setting

WX20221209-183600@2x

response

W/AppLovinSdk( 9023): [TaskProcessMediationWaterfall:4385d9bae4888567:REWARDED] No ads were returned from the server
E/AppLovinSdk( 9023): [AppLovinSdk]
E/AppLovinSdk( 9023): **************************************************
E/AppLovinSdk( 9023): NO FILL received:
E/AppLovinSdk( 9023): ..ID: "4385d9bae4888567"
E/AppLovinSdk( 9023): ..FORMAT: "REWARDED"
E/AppLovinSdk( 9023): ..SDK KEY: "ap-GsdElGdTV-aTUcFqwevirkWZpWLwDmqnvDz567h2lQ7XCRZFeqgfve_-aO6TIQfsPFRgjAH626Sde6QFbIT"
E/AppLovinSdk( 9023): ..PACKAGE NAME: "com.expamle.gogo"
E/AppLovinSdk( 9023): ..Reason: [{"code":2051,"msg":"Please set test mode for guaranteed fill"},{"code":1028,"msg":"Adnetwork missing required signal data"}]
E/AppLovinSdk( 9023): **************************************************
E/AppLovinSdk( 9023):
I/AppLovinSdk( 9023): [TaskProcessMediationWaterfall:4385d9bae4888567:REWARDED] Waterfall failed in 1ms with error: MaxError{code=204, message="MAX returned no eligible ads from any mediated networks for this app/device.", mediatedNetworkErrorCode=-1, mediatedNetworkErrorMessage=""}

What do I need to do to get test ads????????

The 'Pods-Runner' target has transitive dependencies that include statically linked binaries: (ios/Pods/AppLovinSDK/applovin-ios-sdk-11.4.2/AppLovinSDK.xcframework)

Not able to install package becouse of this error

Flutter doctor -v

[✓] Flutter (Channel stable, 3.0.1, on macOS 11.6.4 20G417 darwin-x64, locale en-GB)
• Flutter version 3.0.1 at /Users/mac/development/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision fb57da5f94 (6 weeks ago), 2022-05-19 15:50:29 -0700
• Engine revision caaafc5604
• Dart version 2.17.1
• DevTools version 2.12.2

[!] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
• Android SDK at /Users/mac/Library/Android/sdk
✗ cmdline-tools component is missing
Run path/to/sdkmanager --install "cmdline-tools;latest"
See https://developer.android.com/studio/command-line for more details.
✗ Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• CocoaPods version 1.11.2

[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio (not installed)
• Android Studio not found; download from https://developer.android.com/studio/index.html
(or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).

[✓] IntelliJ IDEA Community Edition (version 2022.1)
• IntelliJ at /Applications/IntelliJ IDEA CE.app
• Flutter plugin version 68.0.4
• Dart plugin version 221.5588

[✓] Connected device (3 available)
• iPhone SE (2nd generation) (mobile) • 3EE9564C-A6E7-4B6D-B17A-E3C99101E50F • ios •
com.apple.CoreSimulator.SimRuntime.iOS-15-2 (simulator)
• macOS (desktop) • macos • darwin-x64 • macOS 11.6.4 20G417
darwin-x64
• Chrome (web) • chrome • web-javascript • Google Chrome 103.0.5060.53
! Error: iPhone SE 2020 is not connected. Xcode will continue when iPhone SE 2020 is connected. (code -13)

[✓] HTTP Host Availability
• All required HTTP hosts are available

Add support to Lock Screen Ads

Feature Description

Is it possible to add support for these types of ads? I have seen that they are available in the android SDK, but not in the flutter plugin.

Thank you in advance!

Are Those Frequency Capping Assumptions And Usage Wrong ?

MAX Plugin Version

3.3.0

Flutter Version

2.3.2

Device/Platform Info

Iphone 12

Current Behavior

Unfortunately, isInterstitialAdReady() returns true and the ad is shown even in a few minutes after the last one seen.

Expected Behavior

This is our interstitial ad's frequency cap configuration, we assume

  • A user will see max 20 interstitial ads per a day
  • After seeing an interstitial ad, the next one will be available after 10 minutes

And this is how we use to check availability and show an ad

Future<bool> isInterstitialAdReady() async {
    return isInitialized && _interstitialLoadState == AdLoadState.loaded 
    && (await AppLovinMAX.isInterstitialReady(_interstitialAdUnitId) == true);
}

if (await isInterstitialAdReady() == true) {
    AppLovinMAX.showInterstitial(_interstitialAdUnitId);
} else {
  _interstitialLoadState = AdLoadState.loading;
   AppLovinMAX.loadInterstitial(_interstitialAdUnitId);
}

image

How to Reproduce

  • Ad availability returns true for the first time
  • In a few minutes, check again availability. And returns true

Additional Info

No response

Why AdColony Warns For GDPR ?

MAX Plugin Version

Flutter-2.3.2

Flutter Version

3.3.0

Device/Platform Info

Iphone 12

Current Behavior

AdColony is integrated in our app. In debug mode, after showing an Interstitial ad below screen appears and warns some points.

I already set user consent TRUE, but do not know what to do for GDPR warning

AppLovinMAX.setHasUserConsent(true);

IMG_7278

Expected Behavior

No response

How to Reproduce

  1. Show Interstitial ad
  2. Wait until its completed
  3. Then see warning screen

Additional Info

No response

Missing interstitialLoadState set to AdLoadState.loading ?

MAX Plugin Version

2.3.2

Flutter Version

latest

Device/Platform Info

Android

Current Behavior

In ElevatedButton(...) function the interstitialLoadState is set to AdLoadState.loading after a new ad is loaded
but in the onAdLoadFailedCallback: the interstitialLoadState is set to AdLoadState.Notloaded and this is kept even after loading a new ad is this callback function.

To me this means that Elevated button will show "Load Interstitial" even if a loading is ongoing.

I am not sure if this is an problem but I read that one should not load extra ads before they are shown or failed.

What is correct?

Expected Behavior

No response

How to Reproduce

Code review

Additional Info

No response

"onAdLoadFailedCallback" method not call.

MAX Plugin Version

11.5.5

Flutter Version

2.3.1

Device/Platform Info

all

Current Behavior

"onAdLoadFailedCallback" method not call.
When load again, log "An ad is already loading".

Expected Behavior

"onAdLoadFailedCallback" method call.

How to Reproduce

load ad without network.

Additional Info

No response

Stuck on `Initializing SDK` on hot restart and `No implementation found for method isInitialized`

When I hot restart on AppLovin MAX Demo App, the app gets stuck on Initializing SDK.... Re-build works with out any issues.

I tried to check if AppLovinMax re-initialization was causing the issue by calling AppLovinMAX.isInitialized. However, I faced another issue of MissingPluginException (MissingPluginException(No implementation found for method isInitialized on channel applovin_max))
Update: No implementation issue persists on AppLovin MAX Demo but not on applovin_max: 1.0.8. But the issue of sdk getting stuck on restart still persists.

`

Flutter 3.0.4
applovin_max: 1.0.8

Banner/Mrec WidgetAd Issue

MAX Plugin Version

11.4.6

Flutter Version

2.0.0

Device/Platform Info

Android 11

Current Behavior

Failed to create MaxAdView widget - please ensure the AppLovin MAX plugin has been initialized by calling 'AppLovinMAX.initialize(...);'!

I'm calling widget build after sdk is initialized but banner and mrec adwidgets are not loading. not even giving ad failed to load call back

Further Console log is below:

E/MethodChannel#flutter/platform_views( 2579): at android.os.Handler.handleCallback(Handler.java:938)
E/MethodChannel#flutter/platform_views( 2579): at android.os.Handler.dispatchMessage(Handler.java:99)
E/MethodChannel#flutter/platform_views( 2579): at android.os.Looper.loop(Looper.java:237)
E/MethodChannel#flutter/platform_views( 2579): at android.app.ActivityThread.main(ActivityThread.java:8163)
E/MethodChannel#flutter/platform_views( 2579): at java.lang.reflect.Method.invoke(Native Method)
E/MethodChannel#flutter/platform_views( 2579): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:656)
E/MethodChannel#flutter/platform_views( 2579): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:967)

Expected Behavior

No response

How to Reproduce

import 'dart:math';

// import 'package:applovin_max/applovin_max.dart';
// import 'package:equalizer_example/app/utils/app_strings.dart';
import 'package:applovin_max/applovin_max.dart';
import 'package:flutter/material.dart';
// import 'package:gb_whatsapp/app/utilities/app_strings.dart';
import 'package:get/get_rx/get_rx.dart';

import '../../../utilities/app_strings.dart';

class AppLovinProvider {

AppLovinProvider._privateConstructor();

static final AppLovinProvider instance = AppLovinProvider._privateConstructor();

final String _sdk_key =AppStrings.MAX_SDK;

final String _interstitial_ad_unit_id = AppStrings.MAX_INTER_ID;
// final String _rewarded_ad_unit_id = "ANDROID_REWARDED_AD_UNIT_ID";
final String _banner_ad_unit_id = AppStrings.MAX_BANNER_ID;
final String _mrec_ad_unit_id = AppStrings.MAX_MREC_ID;

// Create states
RxBool isInitialized = false.obs;
var interstitialLoadState = AdLoadState.notLoaded;
var interstitialRetryAttempt = 0;
var rewardedAdLoadState = AdLoadState.notLoaded;
var rewardedAdRetryAttempt = 0;
var isProgrammaticBannerCreated = false;
var isProgrammaticBannerShowing = false;
var isWidgetBannerShowing = false;
var isProgrammaticMRecCreated = false;
var isProgrammaticMRecShowing = false;
var isWidgetMRecShowing = false;

void init() {
initializePlugin();

}

Future initializePlugin() async {
print("Initializing SDK...");

Map? configuration = await AppLovinMAX.initialize(_sdk_key);
if (configuration != null) {
  isInitialized.value = true;

  print("SDK Initialized: $configuration");
  AppLovinMAX.setVerboseLogging(false);

  attachAdListeners();
   AppLovinMAX.loadInterstitial(_interstitial_ad_unit_id);
  //  AppLovinMAX.createMRec(AppStrings.MAX_MREC_ID, AdViewPosition.centered);
  //  AppLovinMAX.createBanner(AppStrings.MAX_BANNER_ID, AdViewPosition.centered);
}
else{
  print("SDK null");
}

}

 void attachAdListeners() {
/// Interstitial Ad Listeners
AppLovinMAX.setInterstitialListener(InterstitialListener(
  onAdLoadedCallback: (ad) {
    interstitialLoadState = AdLoadState.loaded;

    // Interstitial ad is ready to be shown. AppLovinMAX.isInterstitialAdReady(_interstitial_ad_unit_id) will now return 'true'
    print('Interstitial ad loaded from ' + ad.networkName);

    // Reset retry attempt
    interstitialRetryAttempt = 0;
  },
  onAdLoadFailedCallback: (adUnitId, error) {
    interstitialLoadState = AdLoadState.notLoaded;

    // Interstitial ad failed to load
    // We recommend retrying with exponentially higher delays up to a maximum delay (in this case 64 seconds)
    interstitialRetryAttempt = interstitialRetryAttempt + 1;

    int retryDelay = pow(2, min(6, interstitialRetryAttempt)).toInt();
    print('Interstitial ad failed to load with code ' + error.code.toString() + ' - retrying in ' + retryDelay.toString() + 's');

    Future.delayed(Duration(milliseconds: retryDelay * 1000), () {
      AppLovinMAX.loadInterstitial(_interstitial_ad_unit_id);
    });
  },
  onAdDisplayedCallback: (ad) {
    print('Interstitial ad displayed');
      // AppLovinMAX.loadInterstitial(_interstitial_ad_unit_id);
    //   Future.delayed(Duration(milliseconds: 2 * 1000), () {
    // print('Interstitial ad reloading after display');

    //   AppLovinMAX.loadInterstitial(_interstitial_ad_unit_id);
    // });

  },
  onAdDisplayFailedCallback: (ad, error) {
    interstitialLoadState = AdLoadState.notLoaded;
    print('Interstitial ad failed to display with code ' + error.code.toString() + ' and message ' + error.message);
  },
  onAdClickedCallback: (ad) {
    print('Interstitial ad clicked');
  },
  onAdHiddenCallback: (ad) {
    interstitialLoadState = AdLoadState.notLoaded;
      Future.delayed(Duration(milliseconds: 2 * 1000), () {
    print('Interstitial ad reloading after display');

      AppLovinMAX.loadInterstitial(_interstitial_ad_unit_id);
    });
    print('Interstitial ad hidden');
  },
));


/// Banner Ad Listeners
AppLovinMAX.setBannerListener(AdViewAdListener(onAdLoadedCallback: (ad) {
  print('Banner ad loaded from ' + ad.networkName);
  AppLovinMAX.showBanner(AppStrings.MAX_BANNER_ID);
}, onAdLoadFailedCallback: (adUnitId, error) {
  print('Banner ad failed to load with error code ' + error.code.toString() + ' and message: ' + error.message);
}, onAdClickedCallback: (ad) {
  print('Banner ad clicked');
}, onAdExpandedCallback: (ad) {
  print('Banner ad expanded');
}, onAdCollapsedCallback: (ad) {
  print('Banner ad collapsed');
}));

/// MREC Ad Listeners
AppLovinMAX.setMRecListener(AdViewAdListener(onAdLoadedCallback: (ad) {
  print('MREC ad loaded from ' + ad.networkName);
}, onAdLoadFailedCallback: (adUnitId, error) {
  print('MREC ad failed to load with error code ' + error.code.toString() + ' and message: ' + error.message);
}, onAdClickedCallback: (ad) {
  print('MREC ad clicked');
}, onAdExpandedCallback: (ad) {
  print('MREC ad expanded');
}, onAdCollapsedCallback: (ad) {
  print('MREC ad collapsed');
}));

}

void showInterstitial() async{
print("Interstitial ad is show is called");
bool? isInterstitialReady = await AppLovinMAX.isInterstitialReady(_interstitial_ad_unit_id);
print("return: $isInterstitialReady");
// if (isInitialized.value && isInterstitialReady!) {

// print("Interstitial ad ready to show");



// }

  AppLovinMAX.showInterstitial(_interstitial_ad_unit_id);

}

}

Additional Info

No response

[iOS] Callback does not come when background service is running

MAX Plugin Version

2.3.0

Flutter Version

3.3.5

Device/Platform Info

iOS 16.0

Current Behavior

Log

[AppLovinSdk] INFO [ALVungleMediationAdapter] Loading bidding rewarded ad for placement: RV_BIDDING_IOS-9212409...
[AppLovinSdk] INFO [ALVungleMediationAdapterRouter] Ad is playable and loaded for placement id: RV_BIDDING_IOS-9212409
[AppLovinSdk] DEBUG [ALMediationAdapterWrapper] Setting timeout 30.000000sec. for [ALMediatedFullscreenAd thirdPartyAdPlacementIdentifier=RV_BIDDING_IOS-9212409, adUnitIdentifier=af4b0a2fc539d49f, format=REWARDED, networkName=Vungle]
[AppLovinSdk] INFO [ALTaskTimeoutMediatedAd:af4b0a2fc539d49f] Scheduling (ALTaskTimeoutMediatedAd:af4b0a2fc539d49f) on queue [Mediation Timeout] in 30...
[AppLovinSdk] DEBUG [ALMediationAdapterWrapper] ALVungleMediationAdapter: finished load_ad
[AppLovinSdk] INFO [ALVungleMediationAdapterRouter] Rewarded loaded
[AppLovinSdk] INFO [ALMediationAdapterWrapper] ALVungleMediationAdapter: rewarded ad loaded with extra info: (null)
[AppLovinSdk] DEBUG [ALTaskProcessMediationWaterfall:REWARDED:af4b0a2fc539d49f] Ad loaded in 0.01s
[AppLovinSdk] DEBUG [ALMediationWaterfallWinnerTracker] Tracking winning ad: [ALMediatedFullscreenAd thirdPartyAdPlacementIdentifier=RV_BIDDING_IOS-9212409, adUnitIdentifier=af4b0a2fc539d49f, format=REWARDED, networkName=Vungle]
[AppLovinSdk] INFO [ALTaskProcessMediationWaterfall:REWARDED:af4b0a2fc539d49f] Waterfall loaded in 0.01 for VUNGLE_BIDDING
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Exported postback queue to disk.
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Enqueued postback: <ALPersistentPostback: uniqueIdentifier = FBD5E54C-83E8-48A5-AA14-B0820DBE73E9, HTTPMethod = POST, targetURL = https://prod-ms.applovin.com/1.0/event/load?id=b201ff4f6e0ed088756ade1e51968c38bcea9f71&load_time_ms=10, backupURL = (null), attemptNumber = 0, encodingEnabled = 0, gzipBodyEncoding = 1, communicatorRequestIdentifier = (null), allowedPreInitEvent = 0>
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Preparing to submit postback: <ALPersistentPostback: uniqueIdentifier = FBD5E54C-83E8-48A5-AA14-B0820DBE73E9, HTTPMethod = POST, targetURL = https://prod-ms.applovin.com/1.0/event/load?id=b201ff4f6e0ed088756ade1e51968c38bcea9f71&load_time_ms=10, backupURL = (null), attemptNumber = 0, encodingEnabled = 0, gzipBodyEncoding = 1, communicatorRequestIdentifier = (null), allowedPreInitEvent = 0>
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Exported postback queue to disk.
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Submitting postback: <ALPersistentPostback: uniqueIdentifier = FBD5E54C-83E8-48A5-AA14-B0820DBE73E9, HTTPMethod = POST, targetURL = https://prod-ms.applovin.com/1.0/event/load?id=b201ff4f6e0ed088756ade1e51968c38bcea9f71&load_time_ms=10, backupURL = (null), attemptNumber = 1, encodingEnabled = 0, gzipBodyEncoding = 1, communicatorRequestIdentifier = (null), allowedPreInitEvent = 0>
[AppLovinSdk] DEBUG [ALConnectionManager] Sending POST request to id=#3110592108856409370 "prod-ms.applovin.com/1.0/event/load"...
[AppLovinSdk] DEBUG [ALConnectionManager] 200 received from #3110592108856409370 "prod-ms.applovin.com/1.0/event/load": no data
[AppLovinSdk] INFO [ALConnectionManager] Successful POST returned 200 in 0.050000 s over wifi to #3110592108856409370 "prod-ms.applovin.com/1.0/event/load"
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Exported postback queue to disk.
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Dequeued successfully transmitted postback: <ALPersistentPostback: uniqueIdentifier = FBD5E54C-83E8-48A5-AA14-B0820DBE73E9, HTTPMethod = POST, targetURL = https://prod-ms.applovin.com/1.0/event/load?id=b201ff4f6e0ed088756ade1e51968c38bcea9f71&load_time_ms=10, backupURL = (null), attemptNumber = 1, encodingEnabled = 0, gzipBodyEncoding = 1, communicatorRequestIdentifier = (null), allowedPreInitEvent = 0>
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Submitted postback <ALPersistentPostback: uniqueIdentifier = FBD5E54C-83E8-48A5-AA14-B0820DBE73E9, HTTPMethod = POST, targetURL = https://prod-ms.applovin.com/1.0/event/load?id=b201ff4f6e0ed088756ade1e51968c38bcea9f71&load_time_ms=10, backupURL = (null), attemptNumber = 1, encodingEnabled = 0, gzipBodyEncoding = 1, communicatorRequestIdentifier = (null), allowedPreInitEvent = 0> successfully.
[AppLovinSdk] DEBUG [ALTaskCacheVASTAd] Loaded resource at https://cdn.liftoff-creatives.io/dev/customers/531fa32d8a/videos/mobile/5a581bc0902212321830.mp4
[AppLovinSdk] DEBUG [ALTaskCacheVASTAd] Caching d4252b50-6507-48e8-9c0d-0f8711d01daf5a581bc0902212321830.mp4...
[AppLovinSdk] DEBUG [ALTaskCacheVASTAd] d4252b50-6507-48e8-9c0d-0f8711d01daf5a581bc0902212321830.mp4 cached
[AppLovinSdk] DEBUG [ALTaskCacheVASTAd] Caching succeeded for file: d4252b50-6507-48e8-9c0d-0f8711d01daf5a581bc0902212321830.mp4
[AppLovinSdk] DEBUG [ALTaskCacheVASTAd] Video file successfully cached into: file:///var/mobile/Containers/Data/Application/ACC9CA96-C2E9-479D-818C-4D7758B95BF2/Library/Caches/al/d4252b50-6507-48e8-9c0d-0f8711d01daf5a581bc0902212321830.mp4
[AppLovinSdk] DEBUG [ALTaskCacheVASTAd] Finished caching VAST ad #20379349168936862
[AppLovinSdk] DEBUG [ALEventService] Tracking event: "paused" with parameters: (null)
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Exported postback queue to disk.
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Enqueued postback: <ALPersistentPostback: uniqueIdentifier = 075B0753-A128-441C-A944-9849E4CA91A4, HTTPMethod = (null), targetURL = https://rt.applovin.com/4.0/pix, backupURL = https://rt.applvn.com/4.0/pix, attemptNumber = 0, encodingEnabled = 1, gzipBodyEncoding = 0, communicatorRequestIdentifier = (null), allowedPreInitEvent = 1>
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Preparing to submit postback: <ALPersistentPostback: uniqueIdentifier = 075B0753-A128-441C-A944-9849E4CA91A4, HTTPMethod = (null), targetURL = https://rt.applovin.com/4.0/pix, backupURL = https://rt.applvn.com/4.0/pix, attemptNumber = 0, encodingEnabled = 1, gzipBodyEncoding = 0, communicatorRequestIdentifier = (null), allowedPreInitEvent = 1>
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Exported postback queue to disk.
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Submitting postback: <ALPersistentPostback: uniqueIdentifier = 075B0753-A128-441C-A944-9849E4CA91A4, HTTPMethod = (null), targetURL = https://rt.applovin.com/4.0/pix, backupURL = https://rt.applvn.com/4.0/pix, attemptNumber = 1, encodingEnabled = 1, gzipBodyEncoding = 0, communicatorRequestIdentifier = (null), allowedPreInitEvent = 1>
[AppLovinSdk] DEBUG [ALConnectionManager] Sending POST request to id=#7091054790598596810 "rt.applovin.com/4.0/pix"...
[AppLovinSdk] DEBUG [ALConnectionManager] 200 received from #7091054790598596810 "rt.applovin.com/4.0/pix": 1:578efbfe648d76493fe2f12e21ac789d317ac6d1:XcebtBSB1FkgEvvpaXuF2dkRAXGikMlv6-mEFW2WFvSiNRwVA5Ngs3:D30-MgZpopAP48bXZzPG6cxoS0j1FHeBfd3_18lPD0TxIPMF9MYZWGjNw6Czd82AesAl8wk6YMbvSTcyQ1WVBWPDQVbaDWx736CDC6DzNc4*
[AppLovinSdk] INFO [ALConnectionManager] Successful POST returned 200 in 0.141000 s over wifi to #7091054790598596810 "rt.applovin.com/4.0/pix"
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Exported postback queue to disk.
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Dequeued successfully transmitted postback: <ALPersistentPostback: uniqueIdentifier = 075B0753-A128-441C-A944-9849E4CA91A4, HTTPMethod = (null), targetURL = https://rt.applovin.com/4.0/pix, backupURL = https://rt.applvn.com/4.0/pix, attemptNumber = 1, encodingEnabled = 1, gzipBodyEncoding = 0, communicatorRequestIdentifier = (null), allowedPreInitEvent = 1>
[AppLovinSdk] DEBUG [ALPersistentPostbackManager] Submitted postback <ALPersistentPostback: uniqueIdentifier = 075B0753-A128-441C-A944-9849E4CA91A4, HTTPMethod = (null), targetURL = https://rt.applovin.com/4.0/pix, backupURL = https://rt.applvn.com/4.0/pix, attemptNumber = 1, encodingEnabled = 1, gzipBodyEncoding = 0, communicatorRequestIdentifier = (null), allowedPreInitEvent = 1> successfully.


main.dart

...
await AppLovinMAX.initialize(Constants.applovinSdkKey);
AppLovinMAX.setRewardedAdListener(RewardedAdListener(onAdLoadedCallback: (ad) {
debugPrint('Rewarded ad loaded from ${ad.networkName}');
}, onAdLoadFailedCallback: (adUnitId, error) {
debugPrint('Rewarded ad failed to load with code ${error.code} - retrying in s');
}, onAdDisplayedCallback: (ad) {
debugPrint('Rewarded ad displayed');
}, onAdDisplayFailedCallback: (ad, error) {
debugPrint('Rewarded ad failed to display with code ${error.code} and message ${error.message}');
}, onAdClickedCallback: (ad) {
debugPrint('Rewarded ad clicked');
}, onAdHiddenCallback: (ad) {
debugPrint('Rewarded ad hidden');
}, onAdReceivedRewardCallback: (ad, reward) {
debugPrint('Rewarded ad granted reward');
}, onAdRevenuePaidCallback: (ad) {
debugPrint('Rewarded ad revenue paid: $ad.revenue');
}));

// Init background service(Use flutter_background_service)
await background_service.initBackgroundService();

// Run app -------------------------------------------------------------------
runApp(const ApplovinTest());
}


We're using MAX with flutter_background_service
After background service init, MAX does not send any callback
If I don't run the background service, MAX works fine.
The ApplovinTest widget is code from the examples folder.
Problem only on iOS, works fine on Android.

Expected Behavior

No response

How to Reproduce

  1. init and run background service( https://pub.dev/packages/flutter_background_service/example)
  2. init AppLovin SDK
  3. load rewarded AD
  4. Watch the callback is coming

Additional Info

No response

onRewarded the arguments['rewardAmount'] is int

else if ("OnRewardedAdReceivedRewardEvent" == method) { var reward = MaxReward(int.parse(arguments["rewardAmount"]), arguments["rewardLabel"]);

throw a exception

_TypeError (type 'int' is not a subtype of type 'String')

Passing targeting data

Feature Description

Currently there is no way to pass targeting data, as mentioned in the docs.
Would be nice for a future update.

onAdLoadFailedCallback not called when ad failed to load

MAX Plugin Version

2.3.2

Flutter Version

2.18.5

Device/Platform Info

Android 6.0, Galaxy S6

Current Behavior

No ad showing and onAdLoadFailedCallback not called. So I can't hide the space the ads take up.

Expected Behavior

onAdLoadFailedCallback is called when ad failed to load

How to Reproduce

Step 1: Turn off internet connection
Step 2: Open the screen with ads

Additional Info

No response

VariableService().getString()

Feature Description

I am trying to implement the variable service feature on top of this plugin but every time it returns null.

I am completing the android side with the following code:

public void getString(final String name, final Result result)
    {
        String res = sdk.getVariableService().getString(name);
        result.success(res);
    }


else if ( "getString".equals( call.method ) )
        {
            String name = call.argument( "name" );
            getString(name , result);
        }

and the flutter side with:

 static Future<String?> getString(String name) async {
    return channel.invokeMethod(
        'getString', {'name': name});
  }

Several crashes with rewarded ad on iOS

MAX Plugin Version

2.0.0

Flutter Version

3.0.5

Device/Platform Info

iOS 15

Current Behavior

Several crashes appear in Crashlytics and XCode logs.

Fatal Exception: NSInvalidArgumentException
0 CoreFoundation 0x99288 __exceptionPreprocess
1 libobjc.A.dylib 0x16744 objc_exception_throw
2 CoreFoundation 0xf0390 __CFDictionaryCreateGeneric
3 Runner 0x2e2eb4 +[MARewardedAd sharedWithAdUnitIdentifier:sdk:]
4 Runner 0x1a8a98 -[AppLovinMAX retrieveRewardedAdForAdUnitIdentifier:] + 825 (AppLovinMAX.m:825)
5 Runner 0x1a67f0 -[AppLovinMAX isRewardedAdReadyForAdUnitIdentifier:result:] + 413 (AppLovinMAX.m:413)
6 Runner 0x1aba78 -[AppLovinMAX handleMethodCall:result:] + 1254 (AppLovinMAX.m:1254)
7 Flutter 0x55ae50 (Missing UUID b5f419596300357c85f161f5e6e0920d)
8 Flutter 0x42cd0 (Missing UUID b5f419596300357c85f161f5e6e0920d)
9 libdispatch.dylib 0x1e6c _dispatch_call_block_and_release
10 libdispatch.dylib 0x3a30 _dispatch_client_callout
11 libdispatch.dylib 0x11f48 _dispatch_main_queue_drain
12 libdispatch.dylib 0x11b98 _dispatch_main_queue_callback_4CF
13 CoreFoundation 0x51800 CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE
14 CoreFoundation 0xb704 __CFRunLoopRun
15 CoreFoundation 0x1ebc8 CFRunLoopRunSpecific
16 GraphicsServices 0x1374 GSEventRunModal
17 UIKitCore 0x514b58 -[UIApplication _run]
18 UIKitCore 0x296090 UIApplicationMain
19 Runner 0x590c main + 8 (AppDelegate.swift:8)
20 ??? 0x1065d9da4 (Missing)

Expected Behavior

No response

How to Reproduce

Can't reproduce. Seen only in crash logs, it must be related to rewarded ads.

Additional Info

No response

SemVer rules failed for 2.3.2

MAX Plugin Version

2.3.2

Flutter Version

3.3.8

Device/Platform Info

Any

Current Behavior

Update from 2.3.1 to 2.3.2 needs to update code which depends from

  /// The ad’s revenue amount, or 0 if no revenue amount exists.
  final String revenue;

It is not ok https://dart.dev/tools/pub/versioning#semantic-versions

Expected Behavior

No response

How to Reproduce

Update from 2.3.1 to 2.3.2 breaks existing code

Additional Info

No response

No award on ad click on iOs

MAX Plugin Version

2.0.0

Flutter Version

3.0.5

Device/Platform Info

iOs

Current Behavior

When you click on a rewarded ad to view it (no test), the ad closes in the App and you do not receive the prize.

Does this happen to anyone else?

Expected Behavior

No response

How to Reproduce

Run a Rewarded Ad.
Click on the ad.
onAdReceivedRewardCallback is not executed.

Additional Info

No response

Meta ads are nor working

MAX Plugin Version

1.0.8

Flutter Version

61.2.1 (latest)

Device/Platform Info

Android 11

Current Behavior

Hi,

i can never get any fills from Meta. Using mediation debugger to lad test meta always gives error code 204 (no fill)
When calling "loadInterstitial" from my app there is no callback.
I spotted this in the logs
I am running on a real phone but same behavior on emulator.

D/SensorManager(26284): registerListener :: 1, LSM6DSL Accelerometer, 200000, 0, com.facebook.ads.redexgen.X.96@a3eef5f
D/SensorManager(26284): registerListener :: 4, LSM6DSL Gyroscope, 200000, 0, com.facebook.ads.redexgen.X.97@c350dac

.
.
.
D/SensorManager(26284): unregisterListener :: com.facebook.ads.redexgen.X.96@a3eef5f
D/SensorManager(26284): unregisterListener :: com.facebook.ads.redexgen.X.97@c350dac

The other networks are all working.
Anyone have a clue?

Expected Behavior

No response

How to Reproduce

Use the the mediation debugger on an Android with facebook installed.

Additional Info

No response

All working EXCEPT for iOS Interstitials, am I doing something wrong?

I have added this plugin to a number of my Android apps and both Interstitial and Banner work great, I am using Applovin and also Meta, everything works great. I can see stats for both types of ads almost straight away after the play store puts the app live.

Then I made the exact same updates to the iOS apps, the test ads for both Interstitial and banner show up in the iOS Simulator. However, in the real released apps, when I check the Applovin reports, I am only seeing stats for the iOS bannners, no impressions seem to be there for interstitials. When I install the app from the Apple appstore, I am not seeing any interstitial ads.

Could the new 1.06 plugin fix this? Anything else that could cause this?

Update fails!

MAX Plugin Version

2.2.0

Flutter Version

latest

Device/Platform Info

Androoid

Current Behavior

After update to version 2.2.0
I get this error. Please help!

unning Gradle task 'assembleRelease'...
Picked up _JAVA_OPTIONS: -Xmx2012M

FAILURE: Build failed with an exception.

  • What went wrong:
    Could not determine the dependencies of task ':app:processReleaseResources'.

Could not resolve all task dependencies for configuration ':app:releaseRuntimeClasspath'.
Could not resolve com.applovin:applovin-sdk:+.
Required by:
project :app
> Failed to list versions for com.applovin:applovin-sdk.
> Unable to load Maven meta-data from https://jcenter.bintray.com/com/applovin/applovin-sdk/maven-metadata.xml.
> Could not HEAD 'https://jcenter.bintray.com/com/applovin/applovin-sdk/maven-metadata.xml'.
> Read timed out

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Expected Behavior

No response

How to Reproduce

n/a

Additional Info

No response

dispose a loaded interstitial/rewarded

Feature Description

is there a way to dispose a loaded interstitial/rewarded ad?

Motivation:
during Application start, I initiate a preload request for multiple ad-units.
each ad-unit has a different floor eCPM.
after each load-completion, I'd like to keep only the ad with the highest eCPM.

for that I need to dispose previous loaded ads.

thanks

cannot access MaxAdListener

Launching lib/main.dart on 2201116SG in debug mode...
Running Gradle task 'assembleDebug'...
/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java:19: error: cannot access MaxAdListener
      flutterEngine.getPlugins().add(new com.applovin.applovin_max.AppLovinMAX());
                                ^
  class file for com.applovin.mediation.MaxAdListener not found
1 error

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 39s
Exception: Gradle task assembleDebug failed with exit code 1
romanmakarenko@Romans-Air moon_calendar_flutter % flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, 3.1.0-0.0.pre.1268, on macOS 12.4 21F79 darwin-arm, locale en-CA)
[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 13.4.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.1)
[✓] Android Studio (version 2021.1)
[✓] IntelliJ IDEA Community Edition (version 2019.3.5)
[✓] VS Code (version 1.63.2)
[✓] Connected device (3 available)
[✓] HTTP Host Availability

• No issues found!

Account banned after implementing

MAX Plugin Version

Lastes

Flutter Version

Latest

Device/Platform Info

Current Behavior

After I've implemented the Flutter SDK my account got banned with the reason: check the TOS.

I've tried to contact the support team but they do not respond to my emails because I am banned.

My account is almost 2 y old and I never got anything like this one here.

Can you do something about it?

Expected Behavior

No response

How to Reproduce

Additional Info

No response

iOS setRewardedAdListener() not working

MAX Plugin Version

2.0.0

Flutter Version

3.0.5

Device/Platform Info

iOS

Current Behavior

...
void initializeAdsListener() {
    AppLovinMAX.setRewardedAdListener(
      RewardedAdListener(
        onAdLoadedCallback: (ad) {
          setState(() => _rewardedAdLoadState = AdLoadState.loaded);
          // Rewarded ad is ready to be shown. AppLovinMAX.isRewardedAdReady(_rewarded_ad_unit_id) will now return 'true'
          _log.d('Rewarded ad loaded : ${ad.toString()}');

          // Reset retry attempt
          _rewardedAdRetryAttempt = 0;
        },
        onAdLoadFailedCallback: (adUnitId, error) {
          setState(() => _rewardedAdLoadState = AdLoadState.notLoaded);
          // Rewarded ad failed to load
          // We recommend retrying with exponentially higher delays up to a maximum delay (in this case 64 seconds)
          _rewardedAdRetryAttempt = _rewardedAdRetryAttempt + 1;

          int retryDelay = pow(2, min(6, _rewardedAdRetryAttempt)).toInt();
          _log.d('Rewarded ad failed to load with code ${error.code} - retrying in ${retryDelay}s');

          Future.delayed(Duration(milliseconds: retryDelay * 1000), () {
            AppLovinMAX.loadRewardedAd(Constants.applovinRewardedAdUnitId);
          });
        },
        onAdDisplayedCallback: (ad) {
          _log.d('Rewarded ad displayed - ${ad.toString()}');
        },
        onAdDisplayFailedCallback: (ad, error) {
          _log.d(
              'Rewarded ad failed to display with code ${error.code.toString()} and message ${error.message}  - ${ad.toString()}');

          setState(() => _rewardedAdLoadState = AdLoadState.notLoaded);
        },
        onAdClickedCallback: (ad) {
          _log.d('Rewarded ad clicked - ${ad.toString()}');
        },
        onAdHiddenCallback: (ad) {
          _log.d('Rewarded ad hidden - ${ad.toString()}');

          setState(() => _rewardedAdLoadState = AdLoadState.notLoaded);
          adCompleteHandler();
        },
        onAdReceivedRewardCallback: (ad, reward) {
          _log.d('Rewarded ad granted reward - ${ad.toString()}, ${reward.toString()}');
        },
      ),
    );
  }

  @override
  void initState() {
    super.initState();

    initializeAdsListener();

    WidgetsBinding.instance.addPostFrameCallback((timeStamp) async {
      AppLovinMAX.loadRewardedAd(Constants.applovinRewardedAdUnitId);
    });
  }
...

Can't get callbacks on iOS, but can on Android.

Expected Behavior

Receive callback every step

How to Reproduce

Just follow AppLovin Flutter document

https://dash.applovin.com/documentation/mediation/flutter/getting-started/advanced-settings

Additional Info

No response

Cannot open keyboard after showing Mintegral banner ad in Android

MAX Plugin Version

2.0.0

Flutter Version

3.0.4

Device/Platform Info

Android 11

Current Behavior

There are two problems:

  1. After showing Mintegral banner ad, clicking on the input widget does not open keyboard.
  2. First, click on the input widget to open keyboard. Then show Mintegral banner ad, after the first refresh, the keyboard automatically closes and cannot be opened again.
device-2022-08-08-154602.mp4
device-2022-08-08-151211.mp4

Expected Behavior

  1. After showing Mintegral banner ad, clicking on the input widget can open keyboard.
  2. After the Mintegral banner ad first refresh, keyboard should not close automatically and can be opened again.

How to Reproduce

  1. Open this plugin project and add TextField widget in example/lib/main.dart.
  2. Change _sdk_key and _banner_ad_unit_id to show Mintegral banner ad.
  3. Run the demo app and click 'Show Widget Banner' button.

Additional Info

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.