Flutter插件get_mad的介绍与使用
Flutter插件get_mad的介绍与使用
关于
GetX 包的一个修改版本 4.6.6,旨在增强原有功能的同时保持核心原则。
CLI
- 仅使用
get_mad_cli
。 get_cli
不适用于此包。
为什么选择mad
- 当然,如果你在使用来自未知开发者的非官方版本的
get
,那说明你很疯狂。 - 因此,这里的包本身并不疯狂,而是愿意承担风险的人是疯狂的,这个包正是为他们准备的。
文档
GetView
小部件可以携带自定义标签,以便与单独的多个实例 GetX 控制器一起使用。- 删除了不必要的功能如
GetConnector
以提高性能。 - 添加了 Android 原生过渡动画。
- 修改了默认的过渡持续时间。
- 修改了
GetView
和Bindings
以使用get_mad_cli
实现独特的路由。 - 添加了
RxMad
用于响应式编程。- 使用它:
final RxMad observerForList = RxMad();
- 在小部件中使用:
constroller.observerForList.value;
- 重新构建小部件:
observerForList.refresh();
- 使用它:
更多详细信息,请参阅 GetX 官方文档。
示例代码
主页面 (main.dart)
import 'package:flutter/material.dart';
import 'package:get/get.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return GetMaterialApp(
title: 'Flutter Demo',
home: HomePage(),
);
}
}
class HomePage extends StatelessWidget {
final RxMad observerForList = RxMad();
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Flutter Demo Home Page'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
ElevatedButton(
onPressed: () {
observerForList.refresh();
},
child: Text('Refresh List'),
),
// 这里展示如何获取值
Text('Current Value: ${observerForList.value}'),
],
),
),
);
}
}
配置文件 (pubspec.yaml)
确保在 pubspec.yaml
文件中添加以下依赖项:
dependencies:
flutter:
sdk: flutter
get: ^4.6.6
get_mad_cli: ^1.0.0
更多关于Flutter插件get_mad的介绍与使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复
更多关于Flutter插件get_mad的介绍与使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
get_mad
是一个用于 Flutter 的插件,它允许开发者在应用程序中集成广告功能。这个插件的主要目的是帮助开发者轻松地在 Flutter 应用中展示广告,从而实现变现。以下是如何使用 get_mad
插件的详细步骤:
1. 添加依赖
首先,你需要在 pubspec.yaml
文件中添加 get_mad
插件的依赖。
dependencies:
flutter:
sdk: flutter
get_mad: ^1.0.0 # 请根据最新版本进行更新
然后运行 flutter pub get
来获取依赖。
2. 初始化插件
在你的 main.dart
文件中初始化 get_mad
插件。通常,你需要在 main
函数中进行初始化。
import 'package:get_mad/get_mad.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await GetMad.initialize(
appId: 'YOUR_APP_ID', // 替换为你的应用 ID
);
runApp(MyApp());
}
3. 展示广告
get_mad
提供了多种广告类型,如横幅广告、插页式广告和激励视频广告。以下是如何展示这些广告的示例。
横幅广告
import 'package:flutter/material.dart';
import 'package:get_mad/get_mad.dart';
class BannerAdExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Banner Ad Example'),
),
body: Column(
children: [
Expanded(
child: Center(
child: Text('Banner Ad will be shown below'),
),
),
GetMadBannerAd(
adUnitId: 'YOUR_BANNER_AD_UNIT_ID', // 替换为你的横幅广告单元 ID
size: AdSize.banner,
),
],
),
);
}
}
插页式广告
import 'package:flutter/material.dart';
import 'package:get_mad/get_mad.dart';
class InterstitialAdExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Interstitial Ad Example'),
),
body: Center(
child: ElevatedButton(
onPressed: () async {
await GetMadInterstitialAd.load(
adUnitId: 'YOUR_INTERSTITIAL_AD_UNIT_ID', // 替换为你的插页式广告单元 ID
);
GetMadInterstitialAd.show();
},
child: Text('Show Interstitial Ad'),
),
),
);
}
}
激励视频广告
import 'package:flutter/material.dart';
import 'package:get_mad/get_mad.dart';
class RewardedAdExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Rewarded Ad Example'),
),
body: Center(
child: ElevatedButton(
onPressed: () async {
await GetMadRewardedAd.load(
adUnitId: 'YOUR_REWARDED_AD_UNIT_ID', // 替换为你的激励视频广告单元 ID
);
GetMadRewardedAd.show(
onRewarded: (reward) {
// 处理奖励
print('Reward: $reward');
},
);
},
child: Text('Show Rewarded Ad'),
),
),
);
}
}
4. 处理广告事件
get_mad
提供了多种回调函数来处理广告事件,例如广告加载完成、广告展示、广告点击等。你可以在展示广告时监听这些事件。
GetMadBannerAd(
adUnitId: 'YOUR_BANNER_AD_UNIT_ID',
size: AdSize.banner,
onAdLoaded: () {
print('Ad loaded');
},
onAdFailedToLoad: (error) {
print('Ad failed to load: $error');
},
onAdClicked: () {
print('Ad clicked');
},
);
5. 调试和测试
在开发过程中,你可以使用测试广告单元 ID 来确保广告功能正常工作。例如:
GetMadBannerAd(
adUnitId: GetMad.testAdUnitId, // 使用测试广告单元 ID
size: AdSize.banner,
);