Flutter广告中介插件tapsell_mediation_unityads的使用
Flutter广告中介插件tapsell_mediation_unityads的使用
tapsell_mediation_unityads #
UnityAds中介适配器
安装 #
flutter pub add tapsell_mediation_unityads
使用 #
在Flutter项目中使用tapsell_mediation_unityads
插件时,需要初始化并加载广告。以下是一个完整的示例Demo,展示了如何在Flutter应用中集成和使用该插件。
初始化插件
首先,在项目的main.dart
文件中进行插件初始化:
import 'package:flutter/material.dart';
import 'package:tapsell_mediation_unityads/tapsell_mediation_unityads.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
[@override](/user/override)
Widget build(BuildContext context) {
return MaterialApp(
home: HomePage(),
);
}
}
class HomePage extends StatefulWidget {
[@override](/user/override)
_HomePageState createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
// 初始化UnityAds中介插件
final TapsellMediationUnityAds tapsellMediationUnityAds = TapsellMediationUnityAds();
[@override](/user/override)
void initState() {
super.initState();
// 初始化UnityAds插件
tapsellMediationUnityAds.init(
gameId: 'YOUR_GAME_ID', // 替换为你的游戏ID
testMode: true, // 测试模式
);
}
[@override](/user/override)
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('UnityAds Mediation Demo'),
),
body: Center(
child: ElevatedButton(
onPressed: () {
// 加载广告
tapsellMediationUnityAds.loadAd(
adUnitId: 'YOUR_AD_UNIT_ID', // 替换为你的广告单元ID
adType: AdType.interstitial, // 广告类型(插屏广告)
).then((isLoaded) {
if (isLoaded) {
// 广告加载成功后展示广告
tapsellMediationUnityAds.showAd(
adUnitId: 'YOUR_AD_UNIT_ID', // 替换为你的广告单元ID
adType: AdType.interstitial, // 广告类型(插屏广告)
);
} else {
print('广告加载失败');
}
}).catchError((error) {
print('加载广告时发生错误: $error');
});
},
child: Text('加载并展示广告'),
),
),
);
}
}
更多关于Flutter广告中介插件tapsell_mediation_unityads的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
更多关于Flutter广告中介插件tapsell_mediation_unityads的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
tapsell_mediation_unityads
是一个用于 Flutter 的广告中介插件,它允许你在应用中集成 Unity Ads 并通过 Tapsell 广告平台进行中介。以下是如何使用 tapsell_mediation_unityads
插件的步骤:
1. 添加依赖
首先,你需要在 pubspec.yaml
文件中添加 tapsell_mediation_unityads
插件的依赖:
dependencies:
flutter:
sdk: flutter
tapsell_mediation_unityads: ^1.0.0 # 请使用最新版本
然后运行 flutter pub get
来获取依赖。
2. 初始化插件
在使用插件之前,你需要初始化它。通常,你可以在 main.dart
文件中进行初始化:
import 'package:flutter/material.dart';
import 'package:tapsell_mediation_unityads/tapsell_mediation_unityads.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
// 初始化 Tapsell Unity Ads 插件
await TapsellMediationUnityAds.initialize(
tapsellKey: 'YOUR_TAPSELL_KEY',
unityAdsGameId: 'YOUR_UNITY_ADS_GAME_ID',
);
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(),
);
}
}
3. 加载广告
你可以使用 TapsellMediationUnityAds
来加载 Unity Ads 广告。例如,加载一个插屏广告:
import 'package:flutter/material.dart';
import 'package:tapsell_mediation_unityads/tapsell_mediation_unityads.dart';
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
bool _isAdLoaded = false;
@override
void initState() {
super.initState();
_loadAd();
}
void _loadAd() async {
await TapsellMediationUnityAds.loadInterstitial(
zoneId: 'YOUR_ZONE_ID',
).then((value) {
setState(() {
_isAdLoaded = value;
});
});
}
void _showAd() {
if (_isAdLoaded) {
TapsellMediationUnityAds.showInterstitial(
zoneId: 'YOUR_ZONE_ID',
).then((value) {
setState(() {
_isAdLoaded = false;
});
_loadAd();
});
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Flutter Demo Home Page'),
),
body: Center(
child: ElevatedButton(
onPressed: _showAd,
child: Text('Show Ad'),
),
),
);
}
}
4. 处理广告事件
你可以监听广告事件,例如广告加载成功、失败或用户关闭广告等:
TapsellMediationUnityAds.setInterstitialListener(
onAdLoaded: (zoneId) {
print('Interstitial Ad Loaded for zone: $zoneId');
},
onAdFailed: (zoneId, error) {
print('Interstitial Ad Failed for zone: $zoneId with error: $error');
},
onAdClosed: (zoneId) {
print('Interstitial Ad Closed for zone: $zoneId');
},
);