Flutter集成指南

Flutter插件接入

1 申请appId和codeId

请向相关人员申请测试appId和codeId

2 插件集成

  1. 在项目中的pubspec.yaml文件中添加如下的依赖
dependencies:
 fusionsdk: ^最新版本
  1. 通过命令拉取插件
$ flutter pub get

3 插件初始化(只有Android需要)

初始化请参考插件中example中的样例代码example/android/app/src/main/java/com.fusion.fusionsdk_example/MainApplication.java,需要在Application中执行如下初始化方法,同时Application需要在Manifest中进行配置

FusionAdSDK.init(this,"appId");

4 import

//在需要使用banner的地方引入
import 'package:fusionsdk/fusion_banner_view.dart';
//在需要使用激励视频或者插屏的地方引入
import 'package:fusionsdk/fusion_ad_sdk.dart';

广告接入

1 加载开屏广告

开屏加载时机较早,暂不支持Dart方式进行接入,请参考example中的SplashActivity的开屏处理方式,iOS请参考example中的AppDelegate.m的开屏处理方式

android开屏

// 开屏加载完成
void onSplashAdLoad(SplashAd splashAd);
// 开屏被点击
void onAdClicked();
//开屏曝光
void onAdShow();
//开屏关闭
void onAdClosed();
//开屏错误
void onError(int type, int code, String msg)

IOS开屏

//参考example中AppDelegate.m
WUSplashADView *splashView = [[WUSplashADView alloc] initWithSlotID:@"你的广告位" frame:frame];
splashView.delegate = self;
//iOS回调实现代理WUSplashAdDelegate
//开屏加载完成
- (void)splashAdDidLoad:(WUSplashADView *)splashAd{
}
//开屏曝光
- (void)splashAdDidExposed:(WUSplashADView *)splashAd{
}
//开屏错误
- (void)splashAd:(WUSplashADView *)splashAd didFailWithError:(NSError * _Nullable)error{
}
//开屏被点击
- (void)splashAdDidClick:(WUSplashADView *)splashAd{
}
//开屏关闭
- (void)splashAdDidClose:(WUSplashADView *)splashAd{
}

2 加载横幅广告

横幅是Widget,在页面中直接如下引用

BannerAdView(
    codeId: "codeId",
    onAdLoad: () {
      //横幅加载完成
    },
    onAdShow: () {
    	//横幅曝光
    },
    onAdClick: () {
    	//横幅点击
    },
    onAdClose: () {
    	//横幅关闭
    },
    onAdError: (int code, String message) {
     //横幅错误
    },
  )

横幅自定义参考插件库中的 fusion_banner_view.dart文件,调整合适的尺寸

3 加载插屏广告

插屏是弹出式广告,接入方式如下

FusionAdSdk.loadInterstitialAd(
    "codeId",
    onAdLoad: () {
     //插件加载完成
    },
    onAdShow: () {
     //插件曝光
    },
    onAdClick: () {
     //插件曝光
    },
    onAdClose: () {
     //插件关闭
    },
    onAdError: (int code, String message) {
     //插屏错误
    },
  );

4 加载激励视频广告

激励视频是短视频类广告,用户观看完视频后可以获得一些应用内的奖励

userId为用户id,ext为透传参数 这两个参数非必传

FusionAdSdk.loadRewardVideoAd(
    "codeId",
    onAdLoad: () {
      //激励视频加载完成
    },
    onAdShow: () {
     //激励视频曝光
    },
    onAdClick: () {
     //激励视频点击
    },
    onVideoComplete: () {
     //激励视频播放完成
    },
    onReward: () {
      //激励视频奖励回调
    },
    onAdClose: () {
      //激励视频关闭
    },
    onAdError: (int code, String message) {
     //激励视频广告拉取错误
    },
  );

Libraries

fusion_ad_sdk
fusion_banner_view
fusionsdk