連携
このページでは、AppLovin React Nativeモジュールをダウンロード、インポート、および設定する方法について説明します。
最新モジュールをダウンロード
以下のコマンドを実行して、npm
経由でAppLovin MAX React Nativeモジュールをダウンロードします。
npm install react-native-applovin-max
リリースアップデートを受け取るには、AppLovin MAX React NativeモジュールGitHubリポジトリ をサブスクライブしてください。
カスタムSDKアダプターとの連携
AppLovin Exchange(ALX)はLinkedInのカスタムアダプターをサポートしています。AndroidまたはiOSでアダプターを連携するには、以下の手順に従ってください。詳細については、こちらを参照してください。
Androidの手順
iOSの手順
アダプターをインストールする方法:
- 以下の行をPodfileに追加します。
pod 'AppLovinDSPLinkedInAdapter'
- コマンドラインで以下を実行します。
Terminal window pod install --repo-update
Ad Reviewを有効化
MAX Ad Reviewサービスを有効にするには、以下の手順に従ってください。
Androidの手順
以下をbuild.gradle
ファイルの最後に追加します。
Additions to Root-Level build.gradle
File
buildscript { repositories { maven { url 'https://artifacts.applovin.com/android' } } dependencies { classpath "com.applovin.quality:AppLovinQualityServiceGradlePlugin:+" }}
buildscript { repositories { maven { url = uri("https://artifacts.applovin.com/android") } } dependencies { classpath ("com.applovin.quality:AppLovinQualityServiceGradlePlugin:+") }}
Additions to App-Level build.gradle
File
apply plugin: 'applovin-quality-service'applovin { apiKey "«your-ad-review-key»"}
plugins { id("applovin-quality-service")}applovin { apiKey = "«your-ad-review-key»"}
Ad Review Keyは、AppLovinダッシュボードのAccount > General > Keys セクションでご確認ください。
iOSの手順
AppLovinQualityServiceSetup-ios.rb
をダウンロードして、プロジェクトフォルダにこれを移動します。
ターミナルウィンドウを開き、cd
でプロジェクトディレクトリに移動し、以下を実行します。
ruby AppLovinQualityServiceSetup-ios.rb
SDKを初期化
アプリのホーム画面に以下のコードスニペットを追加します。
import AppLovinMAX, { Configuration } from "react-native-applovin-max";
⋮
AppLovinMAX.initialize("«your-SDK-key»").then((conf: Configuration) => { // SDK is initialized, start loading ads}).catch(error => { // Failed to initialize SDK});
SDK KeyはAppLovinダッシュボードのAccount > General > Keys のセクションにてご確認ください。
完全にキャッシュされた広告アセットは、ユーザー体験の向上につながります。 このため、常に起動時にAppLovin SDKを初期化してください。 これにより、メディエーションネットワークには広告をキャッシュするための最長時間が付与されます。 これは特に動画広告において重要です。
iOS 14サポート
iOS 14では、Appleはグローバルなプライバシーポリシーの変更を導入しました。 Appleは、アプリがこれらの新しいポリシーに準拠することを求めています。 遵守していない場合、収益を失う可能性があります。 このセクションでは、準拠する方法について説明します。
SKAdNetwork
アプリの Info.plist
をネットワーク固有の識別子で更新してください。
手順については、SKAdNetwork documentationを参照してください。
同意とデータAPI
AppLovinのマネタイズパートナーに代わって、特定の法域でユーザーから同意を得る必要があります。 また、同意値をAppLovinに正しく渡す必要があります。 これらの設定方法については、Privacy–Consent, Age-Related Flags, and Data APIsのドキュメントをご覧ください。
iOS 15グローバルSKAdNetworkレポート
iOS 15より、Appleは開発者がSKAdNetworkインストールポストバックのコピーを任意のエンドポイントに送信できるようにしています。 MAXにはGlobal SKAdNetworkレポートが含まれます (MAX > Mediation > Analyze > Global SKA Report)。 これを使用すると、すべてのネットワークパートナーのSKAdNetworkデータに1ヶ所でアクセスできます。
React Native v5移行ガイド
React Nativeモジュールのバージョン5には、Promiseとコールバックをサポートするためのメジャーアップデートが含まれています。 これにより、下位互換性が失われます。 このセクションでは、これらのアップデートについて説明します。
ネイティブUIコンポーネント(AppLovinMAX.AdView
およびAppLovinMAX.NativeAdView
)は、コンポーネント内で直接コールバックを宣言することができます。
型を引数とする汎用的なイベントリスナーではなく、型に固有のイベントリスナーになりました。
例えば、AppLovinMAX.addEventListener(type, listener)
の代わりに、AppLovinMAX.addInterstitialLoadedEventListener(listener)
となります。
戻り値を持つ同期メソッドのいくつかは、Promises構築を使用するようになります。
Promise
によって渡された値にアクセスする際は、then
/catch
またはasync
/await
を介したチェイニングを利用できます。
以下の表は、アップデートされたメソッドの一覧です。
メソッド | resolve 戻り値の型 | reject 戻り値の型 |
---|---|---|
AppLovinMAX.getAdaptiveBannerHeightForWidth(width) | 高さ(float ) | ⸺ |
AppLovinMAX.hasUserConsent() | boolean | ⸺ |
AppLovinMAX.initialize(sdkKey) | 設定オブジェクト | error |
AppLovinMAX.isAgeRestrictedUser() | boolean | ⸺ |
AppLovinMAX.isAppOpenAdReady(adunitId) | boolean | error |
AppLovinMAX.isDoNotSell() | boolean | ⸺ |
AppLovinMAX.isInitialized() | boolean | ⸺ |
AppLovinMAX.isInterstitialReady(adUnitId) | boolean | error |
AppLovinMAX.isMuted() | boolean | ⸺ |
AppLovinMAX.isRewardedAdReady(adunitId) | boolean | error |
AppLovinMAX.isTablet() | boolean | ⸺ |
AppLovinMAX.showConsentDialog() | null | error |
また、デモアプリのコミットでは、移行によってこれらの新しいメソッドをどのように使用するのかを参照できます。
React Native v6移行ガイド
React Nativeモジュールのバージョン6には、TypeScriptとモジュールをサポートするためのメジャーアップデートが含まれています。 これにより、下位互換性が失われます。 このセクションでは、これらのアップデートについて説明します。
TypeScript
React Nativeバージョン0.71より、TypeScriptがReact Nativeのデフォルトのアプリケーションプログラミング言語になりました。 React Nativeモジュールのバージョン6では、コードベースをTypeScriptに移行します。
モジュール
以前のバージョンでは、MAXのすべての機能を含む単一のモジュールAppLovinMAX
がエクスポートされていました。
バージョン6では、さまざまな機能が分類されたモジュールを導入しています。
バージョン6のアーキテクチャはバージョン5に似ていますが、機能のシグネチャーが今回のモジュールの導入に合わせて更新されています。
主な新しいモジュールは次のとおりです。
モジュール | 機能 |
---|---|
AppLovinMAX (デフォルト) | 連携(初期化および汎用機能) |
プライバシー | プライバシー、利用規約フロー |
AppOpenAd | アプリ起動時広告 |
BannerAd | バナー広告 |
InterstitialAd | インタースティシャル広告 |
MRecAd | ミディアムレクタングル(MREC)広告 |
NativeAdView | ネイティブ広告 |
RewardedAd | リワード広告 |
AdView | バナーおよびMREC(UIコンポーネント) |
移行の例
import AppLovinMAX from 'react-native-applovin-max';
AppLovinMAX.addInterstitialLoadedEventListener((adInfo) => { const isInterstitialReady = await AppLovinMAX.isInterstitialReady(«ad-unit-ID»); if (isInterstitialReady) { AppLovinMAX.showInterstitial(«ad-unit-ID»); }});
AppLovinMAX.loadInterstitial(«ad-unit-ID»);
import { InterstitialAd, type AdInfo } from 'react-native-applovin-max';
InterstitialAd.addAdLoadedEventListener((adInfo: AdInfo) => { const isInterstitialReady = await InterstitialAd.isAdReady(«ad-unit-ID»); if (isInterstitialReady) { InterstitialAd.showAd(«ad-unit-ID»); }});
InterstitialAd.loadAd(«ad-unit-ID»);