Flutter广告中介插件tapsell_mediation_wortise的使用

Flutter广告中介插件tapsell_mediation_wortise的使用


Flutter Wortise Mediation Adapter

Pub.dev version Popularity Likes Flutter linter
Technical Support

tapsell_mediation_wortise #

Wortise中介适配器

安装 #

```sh flutter pub add tapsell_mediation_wortise ```

使用 #

无需特定实现

许可证 #

  • 查看LICENSE

Tapsell构建并维护。

完整示例Demo

以下是一个完整的示例Demo,展示如何在Flutter项目中使用tapsell_mediation_wortise插件。

1. 添加依赖

首先,在项目的pubspec.yaml文件中添加tapsell_mediation_wortise依赖:

dependencies:
  flutter:
    sdk: flutter
  tapsell_mediation_wortise: ^1.0.0 # 确保使用最新版本

然后运行flutter pub get来获取新添加的依赖。

2. 初始化Tapsell

在应用程序启动时初始化Tapsell SDK。通常在main.dart文件中进行初始化:

import 'package:flutter/material.dart';
import 'package:tapsell_mediation_wortise/tapsell_mediation_wortise.dart';

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

class MyApp extends StatefulWidget {
  [@override](/user/override)
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  [@override](/user/override)
  void initState() {
    super.initState();
    
    // 初始化Tapsell SDK
    Tapsell.init('YOUR_TAPSELL_APP_ID');
  }

  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Tapsell Mediation Demo'),
        ),
        body: Center(
          child: Text('Hello, Tapsell!'),
        ),
      ),
    );
  }
}

3. 请求广告

接下来,在你的应用中请求广告。例如,在一个按钮点击事件中请求广告:

import 'package:flutter/material.dart';
import 'package:tapsell_mediation_wortise/tapsell_mediation_wortise.dart';

class HomePage extends StatefulWidget {
  [@override](/user/override)
  _HomePageState createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
  String _adContent = '';

  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Tapsell Ad Example'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Text(_adContent),
            ElevatedButton(
              onPressed: () async {
                // 请求广告
                final adResponse = await Tapsell.getAd('YOUR_AD_PLACEMENT_ID');

                setState(() {
                  _adContent = adResponse.content;
                });
              },
              child: Text('Request Ad'),
            ),
          ],
        ),
      ),
    );
  }
}

更多关于Flutter广告中介插件tapsell_mediation_wortise的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter广告中介插件tapsell_mediation_wortise的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


tapsell_mediation_wortise 是一个用于 Flutter 的广告中介插件,旨在帮助开发者在应用中集成和管理来自不同广告网络的广告。这个插件通常与 Tapsell 和 Wortise 等广告平台集成,以便开发者可以通过一个统一的接口来管理和展示广告。

以下是如何使用 tapsell_mediation_wortise 插件的详细步骤:

1. 添加依赖

首先,你需要在 pubspec.yaml 文件中添加 tapsell_mediation_wortise 插件的依赖。

dependencies:
  flutter:
    sdk: flutter
  tapsell_mediation_wortise: ^1.0.0  # 请使用最新版本

然后运行 flutter pub get 来获取依赖。

2. 初始化插件

在你的应用启动时,你需要初始化 tapsell_mediation_wortise 插件。通常,你可以在 main.dart 文件中进行初始化。

import 'package:flutter/material.dart';
import 'package:tapsell_mediation_wortise/tapsell_mediation_wortise.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  // 初始化 Tapsell Mediation Wortise
  await TapsellMediationWortise.initialize(
    appId: 'YOUR_TAPSELL_APP_ID', // 替换为你的 Tapsell App ID
    wortiseId: 'YOUR_WORTISE_APP_ID', // 替换为你的 Wortise App ID
  );

  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Flutter Demo Home Page'),
      ),
      body: Center(
        child: Text('Hello, World!'),
      ),
    );
  }
}

3. 加载和展示广告

tapsell_mediation_wortise 插件支持多种广告类型,如横幅广告、插页广告和激励视频广告。以下是如何加载和展示这些广告的示例。

横幅广告

import 'package:flutter/material.dart';
import 'package:tapsell_mediation_wortise/tapsell_mediation_wortise.dart';

class BannerAdExample extends StatefulWidget {
  [@override](/user/override)
  _BannerAdExampleState createState() => _BannerAdExampleState();
}

class _BannerAdExampleState extends State<BannerAdExample> {
  late BannerAd _bannerAd;

  [@override](/user/override)
  void initState() {
    super.initState();
    _loadBannerAd();
  }

  void _loadBannerAd() async {
    _bannerAd = BannerAd(
      adUnitId: 'YOUR_BANNER_AD_UNIT_ID', // 替换为你的横幅广告单元 ID
      size: AdSize.banner,
      listener: BannerAdListener(
        onAdLoaded: (ad) {
          print('Banner Ad loaded.');
        },
        onAdFailedToLoad: (ad, error) {
          print('Banner Ad failed to load: $error');
        },
      ),
    );

    await _bannerAd.load();
  }

  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Banner Ad Example'),
      ),
      body: Center(
        child: AdWidget(ad: _bannerAd),
      ),
    );
  }

  [@override](/user/override)
  void dispose() {
    _bannerAd.dispose();
    super.dispose();
  }
}

插页广告

import 'package:flutter/material.dart';
import 'package:tapsell_mediation_wortise/tapsell_mediation_wortise.dart';

class InterstitialAdExample extends StatefulWidget {
  [@override](/user/override)
  _InterstitialAdExampleState createState() => _InterstitialAdExampleState();
}

class _InterstitialAdExampleState extends State<InterstitialAdExample> {
  InterstitialAd? _interstitialAd;

  void _loadInterstitialAd() async {
    await InterstitialAd.load(
      adUnitId: 'YOUR_INTERSTITIAL_AD_UNIT_ID', // 替换为你的插页广告单元 ID
      request: AdRequest(),
      adLoadCallback: InterstitialAdLoadCallback(
        onAdLoaded: (ad) {
          setState(() {
            _interstitialAd = ad;
          });
          print('Interstitial Ad loaded.');
        },
        onAdFailedToLoad: (error) {
          print('Interstitial Ad failed to load: $error');
        },
      ),
    );
  }

  void _showInterstitialAd() {
    if (_interstitialAd != null) {
      _interstitialAd!.show();
    } else {
      print('Interstitial Ad is not loaded yet.');
    }
  }

  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Interstitial Ad Example'),
      ),
      body: Center(
        child: ElevatedButton(
          onPressed: () {
            _showInterstitialAd();
          },
          child: Text('Show Interstitial Ad'),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: () {
          _loadInterstitialAd();
        },
        child: Icon(Icons.ad_units),
      ),
    );
  }

  [@override](/user/override)
  void dispose() {
    _interstitialAd?.dispose();
    super.dispose();
  }
}

激励视频广告

import 'package:flutter/material.dart';
import 'package:tapsell_mediation_wortise/tapsell_mediation_wortise.dart';

class RewardedAdExample extends StatefulWidget {
  [@override](/user/override)
  _RewardedAdExampleState createState() => _RewardedAdExampleState();
}

class _RewardedAdExampleState extends State<RewardedAdExample> {
  RewardedAd? _rewardedAd;

  void _loadRewardedAd() async {
    await RewardedAd.load(
      adUnitId: 'YOUR_REWARDED_AD_UNIT_ID', // 替换为你的激励视频广告单元 ID
      request: AdRequest(),
      rewardedAdLoadCallback: RewardedAdLoadCallback(
        onAdLoaded: (ad) {
          setState(() {
            _rewardedAd = ad;
          });
          print('Rewarded Ad loaded.');
        },
        onAdFailedToLoad: (error) {
          print('Rewarded Ad failed to load: $error');
        },
      ),
    );
  }

  void _showRewardedAd() {
    if (_rewardedAd != null) {
      _rewardedAd!.show(onUserEarnedReward: (ad, reward) {
        print('User earned reward: ${reward.amount}');
      });
    } else {
      print('Rewarded Ad is not loaded yet.');
    }
  }

  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Rewarded Ad Example'),
      ),
      body: Center(
        child: ElevatedButton(
          onPressed: () {
            _showRewardedAd();
          },
          child: Text('Show Rewarded Ad'),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: () {
          _loadRewardedAd();
        },
        child: Icon(Icons.ad_units),
      ),
    );
  }

  [@override](/user/override)
  void dispose() {
    _rewardedAd?.dispose();
    super.dispose();
  }
}
回到顶部