メインコンテンツへスキップ

Adrop

Adrop SDKのメインクラスです。SDKの初期化とグローバル設定を担当します。

静的メソッド

メソッド説明
initialize(bool production, {List<String>? targetCountries, bool? useInAppBrowser})SDKを初期化します
setUID(String uid)ユーザー識別子を設定します(SHA-256でハッシュ化)
setTheme(AdropTheme theme)広告テーマを設定します

使用例

import 'package:adrop_ads_flutter/adrop_ads_flutter.dart';

// 基本初期化(テストモード)
await Adrop.initialize(false);

// プロダクションモード + ターゲット国設定
await Adrop.initialize(
  true,
  targetCountries: ['KR', 'JP', 'US'],
);

// ユーザーID設定
await Adrop.setUID('user123');

// テーマ設定
await Adrop.setTheme(AdropTheme.dark);

AdropTheme

広告のダークモード設定用の列挙型です。

説明
lightライトモード
darkダークモード
autoシステム設定に自動追従(デフォルト)

使用例

await Adrop.setTheme(AdropTheme.dark);

AdropErrorCode

広告の読み込みと表示時に発生する可能性のあるエラーコードです。

エラーコードコード文字列説明
networkERROR_CODE_NETWORKネットワークエラー
internalERROR_CODE_INTERNAL内部エラー
initializeERROR_CODE_INITIALIZESDK初期化エラー
invalidUnitERROR_CODE_INVALID_UNIT無効な広告ユニットID
notTargetCountryERROR_CODE_NOT_TARGET_COUNTRYターゲット国ではない
inactiveERROR_CODE_AD_INACTIVE無効化された広告
adNoFillERROR_CODE_AD_NO_FILL表示可能な広告がない
adLoadDuplicateERROR_CODE_AD_LOAD_DUPLICATED重複した広告読み込みリクエスト
adLoadingERROR_CODE_AD_LOADING広告読み込み中
adEmptyERROR_CODE_AD_EMPTY広告が空
adShownERROR_CODE_AD_SHOWN広告がすでに表示されている
adHideForTodayERROR_CODE_AD_HIDE_FOR_TODAY今日は表示しない設定
accountUsageLimitExceededERROR_CODE_ACCOUNT_USAGE_LIMIT_EXCEEDEDアカウント使用制限超過
adLandscapeUnsupportedERROR_CODE_LANDSCAPE_UNSUPPORTED横向きモード非対応
backfillNoFillERROR_CODE_AD_BACKFILL_NO_FILLバックフィル広告もなし
undefinedUNDEFINED未定義のエラー

プロパティ

プロパティ説明
codeStringエラーコード文字列

ファクトリーメソッド

メソッド説明
AdropErrorCode.getByCode(String code)コード文字列でエラーコードを取得

AdropBannerView

バナー広告を表示するウィジェットクラスです。

コンストラクタ

AdropBannerView({
  required String unitId,
  AdropBannerListener? listener,
})

プロパティ

プロパティ説明
creativeSizeCreativeSize?クリエイティブサイズ
adSizeSize?バナービューサイズ設定

メソッド

メソッド戻り値の型説明
load()Future<void>広告を読み込む
dispose()Future<void>リソースを解放

使用例

late AdropBannerView bannerView;

@override
void initState() {
  super.initState();

  bannerView = AdropBannerView(
    unitId: 'YOUR_UNIT_ID',
    listener: AdropBannerListener(
      onAdReceived: (unitId, metadata) {
        setState(() => isLoaded = true);
      },
      onAdFailedToReceive: (unitId, errorCode) {
        debugPrint('エラー: ${errorCode.code}');
      },
    ),
  );

  bannerView.load();
}

@override
void dispose() {
  bannerView.dispose();
  super.dispose();
}

AdropBannerListener

バナー広告イベントを処理するリスナークラスです。

コンストラクタ

AdropBannerListener({
  void Function(String unitId, Map<String, dynamic>? metadata)? onAdReceived,
  void Function(String unitId, Map<String, dynamic>? metadata)? onAdClicked,
  void Function(String unitId, Map<String, dynamic>? metadata)? onAdImpression,
  void Function(String unitId, AdropErrorCode errorCode)? onAdFailedToReceive,
})

コールバック

コールバックパラメータ説明
onAdReceivedunitId, metadata広告受信成功
onAdClickedunitId, metadata広告クリック
onAdImpressionunitId, metadata広告表示
onAdFailedToReceiveunitId, errorCode広告受信失敗

メタデータフィールド

フィールド説明
creativeIdStringクリエイティブID
txIdStringトランザクションID
campaignIdStringキャンペーンID
destinationURLString遷移先URL
creativeSizeWidthdoubleクリエイティブ幅
creativeSizeHeightdoubleクリエイティブ高さ

AdropNativeAd

ネイティブ広告をリクエストするクラスです。

コンストラクタ

AdropNativeAd({
  required String unitId,
  bool useCustomClick = false,
  AdropNativeListener? listener,
})

プロパティ

プロパティ説明
isLoadedbool広告読み込み完了の有無
unitIdString広告ユニットID
creativeIdStringクリエイティブID
txIdStringトランザクションID
campaignIdStringキャンペーンID
destinationURLString遷移先URL
propertiesAdropNativePropertiesネイティブ広告プロパティ
creativeSizeCreativeSizeクリエイティブサイズ
isBackfilledboolバックフィル広告かどうか

メソッド

メソッド戻り値の型説明
load()Future<void>広告を読み込む

使用例

final nativeAd = AdropNativeAd(
  unitId: 'YOUR_UNIT_ID',
  useCustomClick: true,
  listener: AdropNativeListener(
    onAdReceived: (ad) {
      debugPrint('広告受信: ${ad.creativeId}');
    },
    onAdFailedToReceive: (ad, errorCode) {
      debugPrint('エラー: ${errorCode.code}');
    },
  ),
);

await nativeAd.load();

AdropNativeAdView

ネイティブ広告を画面に表示するウィジェットです。

コンストラクタ

AdropNativeAdView({
  required AdropNativeAd? ad,
  required Widget child,
})

使用例

AdropNativeAdView(
  ad: nativeAd,
  child: Container(
    child: Column(
      children: [
        Text(nativeAd?.properties.headline ?? ''),
        Text(nativeAd?.properties.body ?? ''),
      ],
    ),
  ),
)

AdropNativeListener

ネイティブ広告イベントを処理するリスナークラスです。

コンストラクタ

AdropNativeListener({
  void Function(AdropNativeAd ad)? onAdReceived,
  void Function(AdropNativeAd ad)? onAdClicked,
  void Function(AdropNativeAd ad)? onAdImpression,
  void Function(AdropNativeAd ad, AdropErrorCode errorCode)? onAdFailedToReceive,
})

コールバック

コールバックパラメータ説明
onAdReceivedad広告受信成功
onAdClickedad広告クリック
onAdImpressionad広告表示
onAdFailedToReceivead, errorCode広告受信失敗

AdropNativeProperties

ネイティブ広告のコンテンツプロパティです。

プロパティ

プロパティ説明
headlineString?広告タイトル
bodyString?広告本文
creativeString?HTMLクリエイティブコンテンツ
assetString?画像アセットURL
destinationURLString?クリック時の遷移先URL
callToActionString?CTAボタンテキスト
profileAdropNativeProfile?広告主プロフィール情報
extraMap<String, String>追加カスタムフィールド
isBackfilledboolバックフィル広告かどうか

AdropNativeProfile

ネイティブ広告のプロフィール情報です。

プロパティ

プロパティ説明
displayNameString?広告主名
displayLogoString?広告主ロゴ画像URL

AdropInterstitialAd

インタースティシャル広告を表示するクラスです。

コンストラクタ

AdropInterstitialAd({
  required String unitId,
  AdropInterstitialListener? listener,
})

プロパティ

プロパティ説明
isLoadedbool広告読み込み完了の有無
unitIdString広告ユニットID
creativeIdStringクリエイティブID
txIdStringトランザクションID
campaignIdStringキャンペーンID
destinationURLString遷移先URL

メソッド

メソッド戻り値の型説明
load()Future<void>広告を読み込む
show()Future<void>広告を表示
dispose()Future<void>リソースを解放

使用例

final interstitialAd = AdropInterstitialAd(
  unitId: 'YOUR_UNIT_ID',
  listener: AdropInterstitialListener(
    onAdReceived: (ad) {
      ad.show();
    },
    onAdFailedToReceive: (ad, errorCode) {
      debugPrint('エラー: ${errorCode.code}');
    },
    onAdDidDismissFullScreen: (ad) {
      debugPrint('広告が閉じられました');
    },
  ),
);

await interstitialAd.load();

AdropInterstitialListener

インタースティシャル広告イベントを処理するリスナークラスです。

コンストラクタ

AdropInterstitialListener({
  void Function(AdropAd ad)? onAdReceived,
  void Function(AdropAd ad)? onAdClicked,
  void Function(AdropAd ad)? onAdImpression,
  void Function(AdropAd ad)? onAdWillPresentFullScreen,
  void Function(AdropAd ad)? onAdDidPresentFullScreen,
  void Function(AdropAd ad)? onAdWillDismissFullScreen,
  void Function(AdropAd ad)? onAdDidDismissFullScreen,
  void Function(AdropAd ad, AdropErrorCode errorCode)? onAdFailedToReceive,
  void Function(AdropAd ad, AdropErrorCode errorCode)? onAdFailedToShowFullScreen,
})

コールバック

コールバック説明
onAdReceived広告受信成功
onAdClicked広告クリック
onAdImpression広告表示
onAdWillPresentFullScreen広告表示開始(iOS専用)
onAdDidPresentFullScreen広告表示完了
onAdWillDismissFullScreen広告を閉じる開始(iOS専用)
onAdDidDismissFullScreen広告を閉じる完了
onAdFailedToReceive広告受信失敗
onAdFailedToShowFullScreen広告表示失敗

AdropRewardedAd

リワード広告を表示するクラスです。

コンストラクタ

AdropRewardedAd({
  required String unitId,
  AdropRewardedListener? listener,
})

プロパティ

プロパティ説明
isLoadedbool広告読み込み完了の有無
unitIdString広告ユニットID
creativeIdStringクリエイティブID
txIdStringトランザクションID
campaignIdStringキャンペーンID
destinationURLString遷移先URL

メソッド

メソッド戻り値の型説明
load()Future<void>広告を読み込む
show()Future<void>広告を表示
dispose()Future<void>リソースを解放

使用例

final rewardedAd = AdropRewardedAd(
  unitId: 'YOUR_UNIT_ID',
  listener: AdropRewardedListener(
    onAdReceived: (ad) {
      ad.show();
    },
    onAdEarnRewardHandler: (ad, type, amount) {
      // 報酬付与
      debugPrint('報酬: type=$type, amount=$amount');
    },
  ),
);

await rewardedAd.load();

AdropRewardedListener

リワード広告イベントを処理するリスナークラスです。

コンストラクタ

AdropRewardedListener({
  void Function(AdropAd ad)? onAdReceived,
  void Function(AdropAd ad)? onAdClicked,
  void Function(AdropAd ad)? onAdImpression,
  void Function(AdropAd ad)? onAdWillPresentFullScreen,
  void Function(AdropAd ad)? onAdDidPresentFullScreen,
  void Function(AdropAd ad)? onAdWillDismissFullScreen,
  void Function(AdropAd ad)? onAdDidDismissFullScreen,
  void Function(AdropAd ad, AdropErrorCode errorCode)? onAdFailedToReceive,
  void Function(AdropAd ad, AdropErrorCode errorCode)? onAdFailedToShowFullScreen,
  void Function(AdropAd ad, int type, int amount)? onAdEarnRewardHandler,
})

コールバック

コールバック説明
onAdReceived広告受信成功
onAdClicked広告クリック
onAdImpression広告表示
onAdWillPresentFullScreen広告表示開始(iOS専用)
onAdDidPresentFullScreen広告表示完了
onAdWillDismissFullScreen広告を閉じる開始(iOS専用)
onAdDidDismissFullScreen広告を閉じる完了
onAdFailedToReceive広告受信失敗
onAdFailedToShowFullScreen広告表示失敗
onAdEarnRewardHandler報酬獲得

AdropPopupAd

ポップアップ広告を表示するクラスです。

コンストラクタ

AdropPopupAd({
  required String unitId,
  AdropPopupListener? listener,
  Color? closeTextColor,
  Color? hideForTodayTextColor,
  Color? backgroundColor,
})

プロパティ

プロパティ説明
isLoadedbool広告読み込み完了の有無
unitIdString広告ユニットID
creativeIdStringクリエイティブID
txIdStringトランザクションID
campaignIdStringキャンペーンID
destinationURLString遷移先URL
closeTextColorColor?閉じるボタンテキスト色
hideForTodayTextColorColor?”今日は表示しない”テキスト色
backgroundColorColor?ボタン背景色

メソッド

メソッド戻り値の型説明
load()Future<void>広告を読み込む
show()Future<void>広告を表示
close()Future<void>広告を閉じる
dispose()Future<void>リソースを解放

使用例

final popupAd = AdropPopupAd(
  unitId: 'YOUR_UNIT_ID',
  closeTextColor: Colors.white,
  backgroundColor: Colors.black87,
  listener: AdropPopupListener(
    onAdReceived: (ad) {
      ad.show();
    },
  ),
);

await popupAd.load();

AdropPopupListener

ポップアップ広告イベントを処理するリスナークラスです。

コンストラクタ

AdropPopupListener({
  void Function(AdropAd ad)? onAdReceived,
  void Function(AdropAd ad)? onAdClicked,
  void Function(AdropAd ad)? onAdImpression,
  void Function(AdropAd ad)? onAdWillPresentFullScreen,
  void Function(AdropAd ad)? onAdDidPresentFullScreen,
  void Function(AdropAd ad)? onAdWillDismissFullScreen,
  void Function(AdropAd ad)? onAdDidDismissFullScreen,
  void Function(AdropAd ad, AdropErrorCode errorCode)? onAdFailedToReceive,
  void Function(AdropAd ad, AdropErrorCode errorCode)? onAdFailedToShowFullScreen,
})

AdropMetrics

ユーザープロパティとイベントを管理するクラスです。

静的メソッド

メソッド戻り値の型説明
setProperty(String key, dynamic value)Future<void>ユーザープロパティを設定
logEvent(String name, [dynamic params])Future<void>イベントをログ
properties()Future<Map<String, dynamic>>すべてのプロパティを取得

使用例

import 'package:adrop_ads_flutter/adrop_ads_flutter.dart';

// プロパティ設定
await AdropMetrics.setProperty('membership_level', 'premium');
await AdropMetrics.setProperty('age', 25);
await AdropMetrics.setProperty('is_subscriber', true);

// プロパティ削除
await AdropMetrics.setProperty('membership_level', null);

// イベントログ
await AdropMetrics.logEvent('purchase', {
  'item_id': 'SKU_001',
  'price': 29900,
});

// すべてのプロパティ取得
final props = await AdropMetrics.properties();
debugPrint('プロパティ: $props');

CreativeSize

クリエイティブのサイズを表すクラスです。

コンストラクタ

const CreativeSize({
  required double width,
  required double height,
})

プロパティ

プロパティ説明
widthdouble
heightdouble高さ

テストユニットID

開発およびテスト時に使用できるユニットIDです。
フォーマットテストユニットID
バナー(320x50)PUBLIC_TEST_UNIT_ID_320_50
バナー(320x100)PUBLIC_TEST_UNIT_ID_320_100
ネイティブPUBLIC_TEST_UNIT_ID_NATIVE
インタースティシャルPUBLIC_TEST_UNIT_ID_INTERSTITIAL
リワードPUBLIC_TEST_UNIT_ID_REWARDED
ポップアップ(下部)PUBLIC_TEST_UNIT_ID_POPUP_BOTTOM
ポップアップ(中央)PUBLIC_TEST_UNIT_ID_POPUP_CENTER
スプラッシュPUBLIC_TEST_UNIT_ID_SPLASH
本番デプロイ前に必ず実際のユニットIDに置き換えてください。