SDKのインストール

Android SDKをダウンロードしインストールする方法を説明しています。

始める前に

これらの手順に従うためには、Android Studioが必要です。

Android SDKのインストール

Gradle、または手動のいずれかの方法でAndroid SDKをインストールしてください。

Install using Gradle

推奨

ステップ1:リポジトリの宣言
In the Project build.gradle file, declare the mavenCentral repository:

// ...
repositories {
   mavenCentral()
}
/// ...

ステップ2:依存関係の追加
In the application build.gradle file, add the latest Android SDK package:

dependencies {
    // Get the latest version from https://mvnrepository.com/artifact/com.appsflyer/af-android-sdk
    implementation 'com.appsflyer:af-android-sdk:<<HERE_LATEST_VERSION>>'
    // For example
    // implementation 'com.appsflyer:af-android-sdk:6.12.1>> 
}

Manual install

  1. Android Studioにて、フォルダの構成を Android から Projectに切り替えてください:
  2. 最新のAndroid SDKをダウンロードし、app > libsの下にあるAndroidプロジェクトに貼り付けてください。
  3. 貼り付けた jar を右クリックし、Add As Libraryを選択してください。プロンプトが表示されたら、Refatorをクリックしてください。

    gitへのコミットメントが表示されたら、OKをクリックしてください。

    .

必要なパーミッションの設定

Add the following permissions to AndroidManifest.xml in the manifest section:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package=YOUR_PACKAGE_NAME>

      <uses-permission android:name="android.permission.INTERNET" />
      <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

      ...

</manifest>

The AD_ID permission

In early 2022, Google announced a change to the behavior of Google Play Services and fetching of the Android Advertising ID. According to the announcement, apps targeting Android 13 (API 33) and above must declare a Google Play services normal permission in their AndroidManifest.xml file in order to get access to the device’s Advertising ID.

Starting V6.8.0, the SDK adds the AD_ID permission automatically.

📘

注意

  • アプリがファミリー向けデザインプログラムに参加している場合:
    • If using SDK V6.8.0 and above, you should Revoke the AD_ID permission.
    • If using SDK older than V6.8.0, don't add this permission to your app.
  • APIレベル32(Android 12L)以下を対象とするアプリの場合、このパーミッションは必要ではありません。

Apps that use SDK versions older than V6.8.0 and target Android 13 (API 33) and above must manually include the permission in their AndroidManifest.xml to have access to the Advertising ID:

<uses-permission android:name="com.google.android.gms.permission.AD_ID" />

AD_IDアクセス許可の削除

Googleのポリシーによると、子供をターゲットにしたアプリは広告 ID を伝送してはなりません。

When using SDK V6.8.0 and above, children apps targeting Android 13 (API 33) and above must prevent the permission from getting merged into their app by adding a revoke declaration to their Manifest:

<uses-permission android:name="com.google.android.gms.permission.AD_ID"
 tools:node="remove"/>

詳細は、Google Play Servicesのドキュメントを参照して下し亜。

ProGuardのルール

オプション
If you are using ProGuard and you encounter a warning regarding our AFKeystoreWrapper class, then add the following code to your proguard-rules.pro file:

AppsFlyer SDK ProGuard ルール

-keep class com.appsflyer.** { *; }

ストアリファラーライブラリの追加

AppsFlyer SDKは、いくつかのストアリファラーライブラリをサポートしています。ストアリファラーを使用すると、アトリビューションの精度が向上します。

リファラーの依存関係を追加するだけで、SDKが残りの処理を行います。

Google Play Install Referrer

Add the following dependency to your build.gradle:

dependencies {
    // ...
    implementation "com.android.installreferrer:installreferrer:2.2"
}

Google Play Install Referrer ProGuard ルール

-keep public class com.android.installreferrer.** { *; }

Xiaomi GetApps store referrer

V6.9.0
Add the following dependency to your build.gradle:

dependencies {
  // ...
  implementation "com.miui.referrer:homereferrer:1.0.0.6"
}

Xiaomi GetAppsストアリファラーProGuardルール

-keep public class com.miui.referrer.** {*;}

📘

注意

Huawei and Samsung store referrers are supported out-of-the-box starting SDK V6.1.1 and do not require any additional integration.

既知の問題

Backup rules

If you add android:fullBackupContent="true" inside the tag in the AndroidManifest.xml, you might get the following error:

Manifest merger failed : Attribute application@fullBackupContent value=(true)

To fix this error, add tools:replace="android:fullBackupContent" in the <application> tag in the AndroidManifest.xml file.

If you have your own backup rules specified (android:fullBackupContent="@xml/my_rules"), in addition to the instructions above, please merge them with AppsFlyer rules manually by adding the following rule:

<full-backup-content>
    ...//your custom rules
    <exclude domain="sharedpref" path="appsflyer-data"/>
</full-backup-content>

Missing resource files

SDK V5
If you are using Android SDK V5 and above, make sure that in the APK file, in addition to the classes.dex and resources files, you also have a com > appsflyer > internal folder with files a- and b- inside.
Note: Before SDK 5.3.0, file names are a. and b.

Android StudioでAPKを開き、必要なファイルが揃っていることを確認してください。

これらのファイルが見つからない場合、SDKはサーバーにネットワークリクエストを送信できません。その場合には、CSM、もしくはサポートまでご連絡ください。