Flutter SDKの使用を開始する
Adjust Flutter SDKを実装することで、アトリビューションやイベントなどのさまざまなデータをFlutterアプリで計測できます。以下の手順に従って、Adjust SDKをアプリに実装してください。また、GitHubのAdjustのサンプルアプリもご覧ください。
1. プロジェクトにSDKを追加
FlutterアプリでAdjust Flutter SDKを使用するには、それをプロジェクトに追加する必要があります。
Adjust SDKをFlutterプロジェクトに連携させるには、次のステップに従ってください。
- 以下を
pubspec.yaml
ファイルに追加します:
dependencies:
adjust_sdk: ^4.38.0
- プロジェクトに移動して、次のコマンドを実行します。Visual Studioは、
pubspec.yaml
ファイルが編集された後に、このコマンドを自動的に実行します。
flutter packages get
2. Androidデバイスを設定する
Google Play 開発者サービスを追加する
Google Playストアを対象とするアプリは、Google広告ID (gps_adid
)を使用してデバイスを識別する必要があります。これを行うには、以下のdependencyをbuild.gradle
ファイルの dependencies
セクションに追加してください。
implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1'
パーミッションを追加
Adjust SDKには以下のパーミッションが必要です。まだ存在しない場合は、AndroidManifest.xml
ファイルに追加してください。
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
Adjust SDKには、バージョン4.32.0以降、デフォルトでcom.google.android.gms.AD_ID
パーミッションが含まれています。アプリをCOPPAに準拠させる必要がある場合や、Google Playストアをターゲットにしていない場合は、remove
ディレクティブを追加することでこれを削除することができます。
<uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove"/>
このパーミッションに関する詳細は、GoogleのAdvertisingIdClient.infoドキュメントをご参照ください。
ProGuardを設定する
ProGuardを使用している場合は、以下のルールをカスタムのProGuardファイルに追加してください。
-keep public class com.adjust.sdk.**{ *; }
-keep class com.google.android.gms.common.ConnectionResult {
int SUCCESS;
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient {
com.google.android.gms.ads.identifier.AdvertisingIdClient$Info getAdvertisingIdInfo(android.content.Context);
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient$Info {
java.lang.String getId();
boolean isLimitAdTrackingEnabled();
}
-keep public class com.android.installreferrer.**{ *; }
Google Play ストアでアプリを公開していない場合は、以下のルールをProGuardファイルに追加してください。
-keep public class com.adjust.sdk.**{ *; }
インストールリファラーを設定
インストールリファラーはアプリインストールをソースにアトリビュートするのに使用できる、ユニークな識別子です。Adjust SDKは、アトリビューションにこの情報を必要とします。この情報を収集する方法は3つあります。
- Google Play Referrer APIを使用する
- ブロードキャストレシーバーで
INSTALL_REFERRER
インテントを受信します。 - Huawei Referrer APIを使用する(Huaweiデバイスのみ)
INSTALL_REFERRER
インテントメソッド を廃止しました 。現在このメソッドを使用している場合は、Google Play Referrer APIに移行してください。
3. iOS frameworksを追加する
特定のiOS frameworksをアプリに実装した場合、Adjust SDKは追加の情報を取得できます。これらのframeworksによって特定のSDK機能を有効にできますが、SDKの動作に必須ではありません。Frameworksを実装して、 プロジェクト設定(Project Settings) > ビルドフェーズ(Build Phases) > バイナリとライブラリをリンク(Link Binary With Libraries) でそれらをオプションとしてマークすることができます。
Framework | 説明 | 注意 |
---|---|---|
AdSupport.framework | SDKがIDFA値と(iOS 14以前の)LAT情報にアクセスするには、このframeworkが必要です。 | アプリが「子供向け」カテゴリーをターゲットにしている場合は、このframeworkは実装しないでください。 |
AdServices.framework | このフレームワークは、Apple Search Ads アトリビューションを処理するのに必要です。 | |
StoreKit.framework | iOS 14以降において、このframeworkはSKAdNetwork frameworkにアクセスし、SKAdNetworkとの通信をAdjust SDKで自動的に処理できるようにします。 | |
AppTrackingTransparency.framework | iOS 14またはそれ以降において、このframeworkはSDKがトラッキングに対する同意を確認するダイアログをラップし、ユーザーの許諾状況を示す値にアクセスします。 | アプリが「子供向け」カテゴリーをターゲットにしている場合は、このframeworkは実装しないでください。 |
4. Adjust SDKを初期化する
Flutterアプリ内で、出来るだけ早くAdjust SDKを初期化するようにしてください。これを行うには、アプリトークンを使ってConfigオブジェクトとアプリを実行したい環境を初期化します。
AdjustEnvironment.sandbox
に設定されていることを確認してください。アプリをApp Storeに提出する前に、これをAdjustEnvironment.production
に変更してください。
AdjustConfig config = new AdjustConfig('{YourAppToken}', AdjustEnvironment.sandbox);
Adjust.start(config);
5. セッショントラッキングを設定する
SDKがセッション情報をAdjustバックエンドに渡せるようにするには、セッショントラッキングを設定する必要があります。
Androidデバイスのセッショントラッキングを設定するには、アプリがフォアグラウンドで実行しているときはAdjust.onResume()
メソッドを呼び出し、アプリがフォアグラウンドで実行していないときはAdjust.onPause()
メソッドを呼び出します。これはグローバルまたはウィジェットごとに実行できます。
class AdjustExampleApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Adjust Flutter Example App',
home: new MainScreen(),
);
}
}
class MainScreen extends StatefulWidget {
@override
State createState() => new MainScreenState();
}
class MainScreenState extends State<mainscreen> with WidgetsBindingObserver {
@override
initState() {
super.initState();
WidgetsBinding.instance.addObserver(this);
initPlatformState(); // <-- Initialise SDK in here.
}
@override
void dispose() {
WidgetsBinding.instance.removeObserver(this);
super.dispose();
}
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
switch (state) {
case AppLifecycleState.inactive:
break;
case AppLifecycleState.resumed:
Adjust.onResume();
break;
case AppLifecycleState.paused:
Adjust.onPause();
break;
case AppLifecycleState.suspending:
break;
}
}
}
6. アプリをビルドする
設定が完了しました。これでFlutterアプリのビルドと実行が可能になります。ログを有効化して、問題がないか確認してください。ログを確認して、Install tracked
メッセージがあるか調べます。
Adjust SDKを使用してユーザーをアトリビューションできるようになりました。
7. Adjust SDKシグネチャーを追加する
Adjust SDKシグネチャーを使用して、Adjust SDKによって送信される全ての通信に署名できます。これによりAdjustのサーバーは、シグネチャーがない不正インストールを検出し、拒否することができます。
Adjust SDKシグネチャーの使用を開始するには、担当のテクニカルアカウントマネージャーまたはsupport@adjust.comまでお問い合わせください。
8. 実装をテストする
Adjust SDKは、実装をテストとトラブルシューティングのためのツールを提供します。以下の手順に従って、実装をテストしてください。
- 環境を サンドボックス に設定します。
- Datascapeにサンドボックスフィルターを追加します。
- ログレベルを verbose に設定します。