google_applovin_unity_ads 1.2.4 copy "google_applovin_unity_ads: ^1.2.4" to clipboard
google_applovin_unity_ads: ^1.2.4 copied to clipboard

Ads Implement

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:google_applovin_unity_ads/google_applovin_unity_ads.dart';
import 'package:google_applovin_unity_ads/interestial/interstitial_ad.dart';
import 'package:google_applovin_unity_ads/native/controller.dart';
import 'package:google_applovin_unity_ads/open/app_lifecycle_reactor.dart';
import 'package:google_applovin_unity_ads/open/open_ad.dart';
import 'package:google_applovin_unity_ads/reward/reward_ad.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return ScreenUtilInit(
      designSize: Size(double.infinity, double.infinity),
      minTextAdapt: true,
      splitScreenMode: true,
      builder: (context, child) {
        return MaterialApp(
          title: 'Flutter Demo',
          theme: ThemeData(
            primarySwatch: Colors.blue,
          ),
          home: const MyHomePage(title: 'Flutter Demo Home Page'),
        );
      },
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();

}

class _MyHomePageState extends State<MyHomePage> {

  String loadAdMob = "";
  String showAdMob = "";
  InterstitialAd? interestialAd;
  RewardAd? rewardAd;
  OpenAd? openAd;
  AppLifecycleReactor? _appLifecycleReactor;
  Widget nativeAd = Container(
    height: 0,
  );

  void afteradsCallback() {
    print("Callback completed after ad function");
  }

  Future<void> _loadAds() async {
    GoogleApplovinUnityAds.showIntraAds(callback: afteradsCallback, adTimer: 3);
    nativeAd = GoogleApplovinUnityAds.nativeAds(NativeSize(Size(double.infinity, 500)), "F");
  }

  Future<void> _loadRewardAds() async {
    GoogleApplovinUnityAds.showRewardAds(callback: () => {
      afteradsCallback()
    }
    , showIntraAds: false, adTimer: 8);
  }
//
  @override
  void initState() {
    super.initState();
    GoogleApplovinUnityAds.initialize(""" 	
	{	
	"ads_sequence": [	
	    "google_ads",
      "app_lovin"
	],	
	"more_app_url": "https://play.google.com/store/apps/developer?id=Bit+Links", 	
	"extra_url": "https://gitlab.com/bitcodingsolutions/TVGram/-/raw/master/TVGram/Data/Arabic_Live.json",
	"more_live_apps":"https://gitlab.com/vs.bitcoding/live_apps/-/raw/main/live_apps.json",	
	"iptv_player_url": "com.pocketiptv",	
	"ad_setting": {	
		"app_version_code": 5,     
		"is_full_ads": true,
		"onesignal_id": "07de0128-c4bc-45f0-8baa-6867a262a6b7", 
		"ads_loading_text": "Ads will loading...",
		"global_intra_interval_click": 1,
		"interstitial_ad_time_interval": 0
	},	
	"app_update": {	
		"is_popup_dialog": true,
		"is_update_require": false,
		"package_id": "com.adult.iptv.hot.playlist", 
		"website_url": "https://play.google.com/store/apps/details?id=com.adult.iptv.hot.playlist", 
		"app_icon": "https://play-lh.googleusercontent.com/puoKL06VOKbYoXPB-O2JfueIgMDuy2vGWdSZ7f7XsGG9idZQ7Sr42E54Uv-M5a5fqXo=w240-h480-rw",
		"updated_version_code": 50,
		"title": "Enjoy Free Live Channels",
		"default_message": "Don't feel Alone."
	},
	"exit_dialog": {	
		"is_exit_require": true,
		"exit_title": "Exit",
		"exit_message": "Do you want to exit from App?"
	},
	"reward_dialog": {	
		"is_reward_require": true,
		"reward_message": "Watch Reward ads for get IPTV list free"
   	 },	
	"About_App": {	
		"is_override": false,
		"is_about_app": true,
		"about_title": "Arabic IPTV Links m3u Playlists", 
		"about_message": "Your app need an Update!",
		"registration_detail": "Arabic IPTV Links m3u Playlists", 
		"version_detail": "version : 1.0.0"
	},	
	"rate_app": {	
		"is_rate_app": true,
		"package_id": "com.bitlinks.arebic.iptv.m3ulist", 
		"rate_app_url": "https://play.google.com/store/apps/details?id=com.bitlinks.arebic.iptv.m3ulist", 
		"rate_message": "Please Rate us and promote us."
	},	
	"share_app": {	
		"is_share_app": true,
		"share_title": "Share link url :https://play.google.com/store/apps/details?id=com.bitlinks.arebic.iptv.m3ulist", 
		"share_message": "Now anyone can get Arabic IPTV Links m3u Playlists app : https://play.google.com/store/apps/details?id=com.bitlinks.arebic.iptv.m3ulist" 
	},	
	"privacy_policy": {	
		"is_privacy_policy": true,
		"is_system_browser": true,
		"privacy_policy": "https://pages.flycricket.io/arabic-iptv-links-m3/privacy.html" 
	},	
	"terms_of_use": {	
		"is_terms_of_use": true,
		"is_system_browser": true,
		"terms_of_use": "https://pages.flycricket.io/arabic-iptv-links-m3/privacy.html" 
	},	
	"error_report": {	
		"is_error_report_support": true,
		"email_id": "mailto:bitlinks.llc@gmail.com"
	},	
	"feedback_support": {	
		"is_feedback_support": true,
		"email_id":"mailto:bitlinks.llc@gmail.com",
		"feedback_title": "Feedback on Arabic IPTV Links m3u Playlists",
		"feedback_message": "Hi,\n\n\nYour Feedback Arabic IPTV Links m3u Playlists! I would like to give you some feedback:",
		"email_subject": "Feedback on Arabic IPTV Links m3u Playlists",
		"email_message": "Hi,\n\n\nYour Feedback Arabic IPTV Links m3u Playlists! I would like to give you some feedback:"
		
	},	
	"google_ads": {	
		"banner_ad_unit_id_android": "/21753324030,22831392815/com.bitlinks.arebic.iptv.m3ulist_Banner", 
		"interstitial_ad_unit_id_android": "/21753324030,22831392815/com.bitlinks.arebic.iptv.m3ulist_Interstitial", 
		"app_open_ad_unit_id_android": "/21753324030,22831392815/com.bitlinks.arebic.iptv.m3ulist_AppOpen", 
		"native_ads_unit_id_android": "/21753324030,22831392815/com.bitlinks.arebic.iptv.m3ulist_Native", 
		"rewared_ads_unit_id": "/21753324030,22831392815/com.bitlinks.arebic.iptv.m3ulist_Rewarded", 
		"native_video_ads_unit_id_android": "/21753324030,22820476569/com.bitlinks.arebic.iptv.m3ulist_Native", 
		"is_banner_ads": true,
		"is_open_ads": true,
		"is_interstitial_ads": true,
		"is_rewared_ads": true,
		"is_native_ads": true,
		"no_of_click_interstitial": 1
	},
	"facebook_ads": {	
		"banner_ad_unit_id_android": "5539744139423297_5539745006089877", 
		"interstitial_ad_unit_id_android": "5539744139423297_5539745259423185", 
		"rewared_ads_unit_id": "5539744139423297_5539745882756456", 
		"native_ads_unit_id_android": "5539744139423297_5539745429423168", 
		"is_banner_ads": true,
		"is_interstitial_ads": true,
		"is_rewared_ads": true,
		"is_native_ads": true,
		"no_of_click_interstitial": 1
	},	

        "custom_ads": { 
                "qureka_link": "https://490.go.qureka.com/intro/question",
                "is_quraka_banner": true,
                "is_quraka_intera": true,
                "is_quraka_native": true,
                "close_button_to_direct_web": true,
        "quraka_intra_image": [ 
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/360X640_1.png?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/360X640_2.png?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/360X640_3.png?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/360X640_4.png?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/360X640_5.png?raw=true"
        ],      
        "quraka_native_image": [        
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/3.jpg?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/320x50.jpg?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/4.jpg?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/6.jpg?raw=true"
        ],      
        "quraka_banner_image": [        
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/2.jpg?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/3.jpg?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/320x50.jpg?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/4.jpg?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/5.jpg?raw=true",
                "https://github.com/pragneshpalsanabitcoding/image_quraka/blob/main/6.jpg?raw=true"
        ]
	
	},	
	"app_lovin": {	
		"sdk_key":"l1eHJCxgHTn4tTHns3A55HzXG6ekoyDJigM2SxRmGSN6T1bNmT37tTDW0UxVBVkUepJxXKxFQ8yPMONBdyKO3A",

		 "is_unlimited_ads": true,

		"id_unit_banner": "2e0b59c71f80eddc",
		"id_unit_intra": "a2fae544a93ad926",
		"id_unit_open": "e4f41da53b068b30",
		"id_unit_native_multiple": 
		{
      "small":"5d5b39793f8cf9e5",
      "medium":"306db0fab0c82086",
      "manual":"45851d7dfca0452c"
    },
		"rewared_ads_unit_id": "3c16ad3e7dcfb520",
		"is_banner_ads": true,
		"is_open_ads": true,
		"is_interstitial_ads": true,
		"is_native_ads": true,
		"is_rewared_ads": true
	}
	}	
   
    """, callback: () => {

    });
  }

  openAdCallback() {
    print("CHECK openAdCallback -------------------------- ");
  }

  @override
  Widget build(BuildContext context) {
    ScreenUtil.init(context);
    return SafeArea(
        child: Column(
      mainAxisSize: MainAxisSize.max,
      mainAxisAlignment: MainAxisAlignment.spaceBetween,
      children: [
        Container(
            margin: EdgeInsets.all(8.0),
            width: double.infinity,
            height: 60,
            child: Material(
              color: Colors.transparent,
              child: InkWell(
                borderRadius: BorderRadius.all(Radius.circular(10)),
                onTap: () => _loadAds(),
                child: Ink(
                  child: Container(
                    decoration: BoxDecoration(
                      borderRadius: BorderRadius.all(Radius.circular(10)),
                      color: Colors.black,
                    ),
                    alignment: Alignment.center,
                    child: Padding(
                      padding: EdgeInsets.symmetric(vertical: 16.0),
                      child: Row(
                        mainAxisAlignment: MainAxisAlignment.center,
                        children: [
                          Text("Show Native Ads",
                              style: TextStyle(
                                  fontSize: 20,
                                  fontWeight: FontWeight.bold,
                                  color: Colors.white)),
                        ],
                      ),
                    ),
                  ),
                ),
              ),
            )),

        SizedBox(height: 50.h,),
        Container(
            margin: EdgeInsets.all(8.0),
            width: double.infinity,
            height: 60,
            child: Material(
              color: Colors.transparent,
              child: InkWell(
                borderRadius: BorderRadius.all(Radius.circular(10)),
                onTap: () => _loadRewardAds(),
                child: Ink(
                  child: Container(
                    decoration: BoxDecoration(
                      borderRadius: BorderRadius.all(Radius.circular(10)),
                      color: Colors.black,
                    ),
                    alignment: Alignment.center,
                    child: Padding(
                      padding: EdgeInsets.symmetric(vertical: 16.0),
                      child: Row(
                        mainAxisAlignment: MainAxisAlignment.center,
                        children: [
                        Text("Show Reward Ads",
                            style: TextStyle(
                                fontSize: 20,
                                fontWeight: FontWeight.bold,
                                color: Colors.white)),
                        ],
                      ),
                    ),
                  ),
                ),
              ),
            )),
        nativeAd
      ],
    ));

    return Scaffold(
        appBar: AppBar(
          title: Text(widget.title),
        ),
        body: Center(
          // Center is a layout widget. It takes a single child and positions it
          // in the middle of the parent.
          child: Column(
            mainAxisSize: MainAxisSize.min,
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Container(
                  margin: EdgeInsets.all(8.0),
                  width: double.infinity,
                  height: 60,
                  child: Material(
                    color: Colors.transparent,
                    child: InkWell(
                      borderRadius: BorderRadius.all(Radius.circular(10)),
                      onTap: () => _loadAds(),
                      child: Ink(
                        child: Container(
                          decoration: BoxDecoration(
                            borderRadius: BorderRadius.all(Radius.circular(10)),
                            color: Colors.black,
                          ),
                          alignment: Alignment.center,
                          child: Padding(
                            padding: EdgeInsets.symmetric(vertical: 16.0),
                            child: Row(
                              mainAxisAlignment: MainAxisAlignment.center,
                              children: [
                                Text("Show Intrestial Ads",
                                    style: TextStyle(
                                        fontSize: 20,
                                        fontWeight: FontWeight.bold,
                                        color: Colors.white)),
                              ],
                            ),
                          ),
                        ),
                      ),
                    ),
                  )),
              SizedBox(height: 24.h),
              /*Container(
                  margin: EdgeInsets.all(8.0),
                  width: double.infinity,
                  height: 60,
                  child: Material(
                    color: Colors.transparent,
                    child: InkWell(
                      borderRadius: BorderRadius.all(Radius.circular(10)),
                      onTap: () => _loadRewardAds(),
                      child: Ink(
                        child: Container(
                          decoration: BoxDecoration(
                            borderRadius:
                            BorderRadius.all(Radius.circular(10)),
                            color: Colors.black,
                          ),
                          alignment: Alignment.center,
                          child: Padding(
                            padding: EdgeInsets.symmetric(vertical: 16.0),
                            child: Row(
                              mainAxisAlignment: MainAxisAlignment.center,
                              children: [
                                Text("Show Reward Ads",
                                    style: TextStyle(
                                        fontSize: 20,
                                        fontWeight: FontWeight.bold,
                                        color: Colors.white)),
                              ],
                            ),
                          ),
                        ),
                      ),
                    ),
                  )),
              SizedBox(height: 16.h),*/
              /*GoogleApplovinUnityAds.nativeAds(NativeSize.SMALL_NATIVE, Colors.transparent),
              SizedBox(height: 16.h),*/
              Container(height: 100, child: Container()),
            ],
          ),
        ) // This trailing comma makes auto-formatting nicer for build methods.
        );
  }
}
4
likes
90
pub points
34%
popularity

Publisher

unverified uploader

Ads Implement

Documentation

API reference

License

unknown (LICENSE)

Dependencies

flutter, flutter_inappwebview

More

Packages that depend on google_applovin_unity_ads