本指南面向希望通过 Flutter 应用进行创收的发布商。
要展示 AdMob 广告并赚取收入,第一步就是将 Google 移动广告 SDK 集成到 Flutter 应用中,本文便为您讲解如何完成这一步。一次 集成已完成,您可以选择一种广告格式 实施步骤。
适用于 Flutter 的 Google 移动广告 SDK 目前支持加载和展示横幅广告、插页式广告(全屏)、原生广告和激励广告。
前提条件
- Flutter 1.22.0 或更高版本
- Android
- Android Studio 3.2 或更高版本
- 以 Android API 级别 20 或更高级别为目标平台
- 将
compileSdkVersion
设置为 28 或更高版本
- iOS
- 推荐:创建 AdMob 账号并注册 Android 和/或 iOS 应用
导入移动广告 SDK
针对具体平台的设置
Android
更新 AndroidManifest.xml
AdMob 应用 ID 必须包含在 AndroidManifest.xml
中。失败
则会导致应用启动时崩溃。
添加 AdMob 应用 ID(可在 AdMob 网站中找到)
接口、
android/app/src/main/AndroidManifest.xml
文件(通过添加 <meta-data>
标记)
并将其命名为 com.google.android.gms.ads.APPLICATION_ID
。对于
android:value
,请插入您自己的 AdMob 应用 ID 并加上英文引号,如下所示:
<manifest>
<application>
<!-- Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
<application>
<manifest>
在 Dart 代码中初始化插件时,请使用相同的 value
。
请参阅 Android
指南,了解更多信息
有关如何配置 AndroidManifest.xml
和设置应用的信息
ID。
iOS
更新 Info.plist
在应用的 ios/Runner/Info.plist
文件中,添加一个 GADApplicationIdentifier
键,其值为字符串形式的 AdMob 应用 ID(可在 AdMob 网页界面中找到):
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-################~##########</string>
使用 Dart 代码初始化插件时,必须传递相同的值。
如需详细了解如何配置 Info.plist
和设置您的应用 ID,请参阅 iOS 指南。
初始化移动广告 SDK
加载广告之前,请通过调用 MobileAds.instance.initialize()
来让应用初始化移动广告 SDK。该方法将初始化相应 SDK,并在初始化完成后或 30 秒超时后返回完成的 Future
。此操作仅需执行一次,最好是在运行应用前执行。
import 'package:google_mobile_ads/google_mobile_ads.dart';
import 'package:flutter/material.dart';
void main() {
WidgetsFlutterBinding.ensureInitialized();
MobileAds.instance.initialize();
runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
MyAppState createState() => MyAppState();
}
class MyAppState extends State<MyApp> {
@override
void initState() {
super.initState();
// Load ads.
}
}
选择广告格式
导入移动广告 SDK 后,您就可以植入广告了。AdMob 提供了许多不同的广告格式,您可以根据您应用的用户体验选择最契合的一款。
横幅
在设备屏幕的顶部或底部展示的矩形广告。横幅 用户与应用互动时,广告会停留在屏幕上,并且可刷新 一段时间后自动触发如果您刚开始接触移动广告,建议从横幅广告着手。
插页式广告
插页式广告是全屏广告,它会覆盖整个应用界面,直到用户将其关闭。这类广告最适合在应用执行流程的自然停顿点, 在游戏关卡之间或刚完成任务之后展示。
原生
原生广告是一种与您应用的外观和风格融为一体的定制广告。您可以决定这类广告的投放方式和位置,从而让版式与应用的设计风格更为统一。
激励广告
向观看短视频和与试玩广告及问卷调查互动的用户予以奖励的广告。适合用来通过只愿意免费玩游戏的用户创收。