パッケージ、リポジトリ、アプリカテゴリを検索

GitHub リポジトリpavelzaichyk/flutter_unity_mediation

flutter_unity_mediation

Flutterアプリケーション向けのUnity Mediationプラグイン。このプラグインは、さまざまな広告ソースからの報酬型広告およびインタースティシャル広告を表示できます。

flutter_unity_mediation のプロジェクト画像
スター
2
フォーク
4
最終プッシュ(UTC)
2023/10/21
プロジェクト状態
公開中

元の README

以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。

Unity Mediation

Pub License Pub likes Pub popularity Pub points Flutter platform

Buy Me A Coffee PayPal

Unity Mediation has been deprecated and is no longer supported. Use Unity LevelPlay for mediation of ad networks instead. If your application uses only ads from Unity Ads source, use Unity Ads Plugin.

Unity Mediation plugin for Flutter Applications. This plugin is able to display Rewarded and Interstitial Ads from different ad sources.

Getting Started

1. Configure
iOS
  • set iOS version to 9.0 or higher in ios/Podfile file
  • in ios/Podfile file add next lines after platform :ios line:
source 'https://github.com/CocoaPods/Specs.git'
source 'https://github.com/Unity-Technologies/unity-mediation-cocoapods-prod.git'
Android
  • set minSdkVersion to 21 in android/app/build.gradle file
2. Configure ad sources

For using additional advertising sources, it's needed to configure them.

iOS

Add dependencies of configured ad sources to ios/Podfile file from the table below

target 'Runner' do
  use_frameworks!
  use_modular_headers!
  # list of adapters
  flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end

AdMob ad source requires additional configuration. If you use AdMob add your AdMob app ID to ios/Runner/Info.plist file

<key>GADApplicationIdentifier</key>
<string>YOUR_ADMOB_APP_ID</string>
Android

Add dependencies of configured ad sources to android/app/build.gradle file

dependencies {
    // list of adapters
}

AdMob ad source requires additional configuration. If you use AdMob add your AdMob app ID to android/app/src/main/AndroidManifest.xml file

<manifest>
    <application>
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="YOUR_ADMOB_APP_ID"/>
    </application>
</manifest>
Ad Sources
Source iOS Android
AdColony pod 'UnityMediationAdColonyAdapter' implementation "com.unity3d.mediation:adcolony-adapter:1.0.0"
AppLovin pod 'UnityMediationAppLovinAdapter' implementation "com.unity3d.mediation:applovin-adapter:1.0.0"
IronSource pod 'UnityMediationIronSourceAdapter' implementation "com.unity3d.mediation:ironsource-adapter:1.0.0"
Vungle pod 'UnityMediationVungleAdapter' implementation "com.unity3d.mediation:vungle-adapter:1.0.1"
Meta Audience Network pod 'UnityMediationFacebookAdapter' implementation "com.unity3d.mediation:facebook-adapter:1.0.0"
AdMob pod 'UnityMediationAdmobAdapter' implementation "com.unity3d.mediation:admob-adapter:1.0.0"
3. Initialization

Initialize Unity Mediation with your game ID

UnityMediation.initialize(
  gameId: 'GAME_ID',
  onComplete: () => print('Initialization Complete'),
  onFailed: (error, message) => print('Initialization Failed: $error $message'),
);
4. Rewarded Ad

Rewarded Video Ad

Load an ad before show it.

UnityMediation.loadRewardedAd(
  adUnitId: 'REWARDED_AD_UNIT_ID',
  onComplete: (adUnitId) => print('Rewarded Ad Load Complete $adUnitId'),
  onFailed: (adUnitId, error, message) => print('Rewarded Ad Load Failed $adUnitId: $error $message'),
);

Show a loaded rewarded ad.

UnityMediation.showRewardedAd(
  adUnitId: 'REWARDED_AD_UNIT_ID',
  onStart: (adUnitId) => print('Rewarded Ad $adUnitId started'),
  onClick: (adUnitId) => print('Rewarded Ad $adUnitId click'),
  onRewarded: (adUnitId, reward) => print('Rewarded Ad $adUnitId rewarded $reward'),
  onClosed: (adUnitId) => print('Rewarded Ad $adUnitId closed'),
  onFailed: (adUnitId, error, message) => print('Rewarded Ad $adUnitId failed: $error $message'),
);
Server-to-server redeem callbacks

To use server-to-server callbacks, you need to set userId parameter when call showRewardedAd.

Read more on docs.unity.com.

5. Interstitial Ad

Interstitial Video Ad

Load an ad before show it.

UnityMediation.loadInterstitialAd(
    adUnitId: 'INTERSTITIAL_AD_UNIT_ID',
    onComplete: (adUnitId) => print('Interstitial Ad Load Complete $adUnitId'),
    onFailed: (adUnitId, error, message) => print('Interstitial Ad Load Failed $adUnitId: $error $message'),
);

Show a loaded interstitial ad.

UnityMediation.showInterstitialAd(
    adUnitId: 'INTERSTITIAL_AD_UNIT_ID',
    onStart: (adUnitId) => print('Interstitial Ad $adUnitId started'),
    onClick: (adUnitId) => print('Interstitial Ad $adUnitId click'),
    onClosed: (adUnitId) => print('Interstitial Ad $adUnitId closed'),
    onFailed: (adUnitId, error, message) => print('Interstitial Ad $adUnitId failed: $error $message'),
);
6. Banner Ad

Banner Ad

Place BannerAd widget in your app.

BannerAd(
  adUnitId: 'BANNER_AD_UNIT_ID',
  onLoad: (adUnitId) => print('Banner loaded: $adUnitId'),
  onClick: (adUnitId) => print('Banner clicked: $adUnitId'),
  onFailed: (adUnitId, error, message) => print('Banner Ad $adUnitId failed: $error $message'),
),

Donate

Your donation motivates me to work more on plugins and packages. If you found this plugin helpful and would like to thank me:

Donate Buy Me A Coffee PayPal

Pavel Zaichyk GitHub avatar
GitHub 作者

Pavel Zaichyk ↗

Senior Software Engineer

Białystok, Poland
言語JavaDartSwiftRubyObjective-C

このリポジトリが公開するパッケージ

使用している依存関係

依存関係一覧 3 件

  • flutter{"sdk":"flutter"}
  • flutter_test開発用{"sdk":"flutter"}
  • flutter_lints開発用^1.0.0

プロジェクトに合うリポジトリを選ぶには?

用途で絞り込み、開発状況を比較し、採用前に元のリポジトリで要件を確認しましょう。

  1. 名前・作者・説明で検索し、技術トピックで絞り込みます。
  2. スター、フォーク、最近のプッシュを比較します。スターは関心の目安であり、品質の保証ではありません。
  3. 利用前に GitHub で README、ライセンス、Issues を確認します。

情報源と管理

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗