Android SDK (Japanese)

現在の Android SDK バージョン 3.10.0

ネイティブ Android™ プラットフォーム用の MobileAppTracking™ (MAT) SDK には、アプリケーションセッションおよびイベントロギング機能が用意されています。Android 用 MAT SDK は、単一の java JAR ファイルの形式で利用可能で、シンプルに Android プロジェクトへと含めることができます。当社 SDK は、Android バージョン 2.2 以降で実行されるすべての Android デバイスに対応しています。

測定セッションおよびイベントを開始するには、まず Android 用 MAT SDK をお使いのモバイルアプリに統合します。「measureSession (測定セッション)」 方法を開始した後に、MAT を利用してアプリイベントにログイン可能です (購入、ゲームレベル、およびその他のユーザーエンゲージメントなど)。

このクイックスタートに従い、MAT SDK をすぐに起動および実行できます。MAT SDK バージョン 2.x ~ 3.x からアプリをアップグレードする場合は、Migrating from SDK 2.x to 3.x (SDK 2.x to 3.x から移行する) ’ をご覧ください。

SDK をダウンロードする

Android 用 MAT SDK のサイズは、151 kB です。MAT SDK をダウンロードする前に、Downloading the Appropriate SDK (適切な SDK をダウンロードする) のステップに従い、MAT プラットフォームにアプリを追加してください。

また MAT SDK は、セッションおよびイベント測定のためのライブラリ付きオープンソースフレームワークとしても利用可能です。オープンソース SDK にアクセスするには、GitHub をご覧ください。

実装

ダウンロードした SDK を実装するには:

  1. MobileAppTracker-x.y.z.jar ファイルをモバイルアプリの libs ディレクトリにコピーします。
    gradle ’ を使用している場合、以下の従属性に libs ローカルフォルダを追加しても良いでしょう:
    compile fileTree(dir: 'libs', include: ['*.jar'])
  2. Google Play Services SDK をインストールしてプロジェクトへとインポートし、SDK による Google Advertising ID (Google 広告 ID) の収集を可能にします。
  3. 以下のセクションを AndroidManifest.xml ファイルに追加します:
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>	 	 
    <application ... >	 	 
        <receiver android:name="com.mobileapptracker.Tracker">	 	 
            <intent-filter>	 	 
                <action android:name="com.android.vending.INSTALL_REFERRER" />	 	 
            </intent-filter> 
        </receiver>
        <!-- meta-data only needed here if not using Gradle to include the GPS lib -->
        <meta-data android:name="com.google.android.gms.version"
                   android:value="@integer/google_play_services_version" />
    </application>
    注記:複数の SDK が Android アプリに実装されている場合は、Multiple Android Install Referrers (複数 Android インストールリファラー) で説明されているように、複数の Android INSTALL_REFERRER レシーバーが存在する可能性があります。INSTALL_REFERRER が適切に収集されているか確認するには、Testing the Google Play Install Referrer (Google Play インストールリファラーを試験する) をご覧ください。
  4. ProGuard を使用している場合、MAT および Google 広告 ID クラスを、以下のラインを持つ <project_directory>/proguard-project.txt ファイル内の難読化から削除します:
    -keep public class com.mobileapptracker.** { public *; }
     
    -keep public class com.google.android.gms.ads.identifier.** { *; }
    また、さらなる最適化を行ってもよいでしょう:
    https://developers.mobileapptracking.com/avoiding-the-dalvik-65k-method-limit/
  5. 主なアクティビティにおいて、MobileAppTracker を初期化します:
    import com.mobileapptracker.MobileAppTracker;
     
    public class MyClass extends Activity {
        public MobileAppTracker mobileAppTracker = null;
     
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
     
            // Initialize MAT
            mobileAppTracker = MobileAppTracker.init(getApplicationContext(),
                                                     "your_advertiser_ID",
                                                     "your_conversion_key");
     
            // If your app already has a pre-existing user base before you implement the MAT SDK, then
            // identify the pre-existing users with this code snippet.
            // Otherwise, MAT counts your pre-existing users as new installs the first time they run your app.
            // Omit this section if you're upgrading to a newer version of the MAT SDK.
            // This section only applies to NEW implementations of the MAT SDK.
            //boolean isExistingUser = ...
            //if (isExistingUser) {
            //    mobileAppTracker.setExistingUser(true); 
            //}
        }
     
        @Override
        public void onResume() {
            super.onResume();
            // Get source of open for app re-engagement
            mobileAppTracker.setReferralSources(this);
            // MAT will not function unless the measureSession call is included
            mobileAppTracker.measureSession();
        }
    }
  6. (アプリを Google Play でのみ配布する場合、本ステップはスキップしてください) アプリを Google Play だけでなく Android アプリストアでも入手可能にする場合、デバイス識別子として ANDROID_ID、デバイス ID、および MAC アドレスを引き続き収集します。onCreate で MAT を初期化した後に、これらの識別子を以下のセッター経由で MAT SDK へと渡します。Android ID
    ANDROID_ID は Google 広告 ID 収集が失敗する場合、フォールバックとして自動収集されます (Amazon デバイス、GPS バージョン 4.0 以降)。同 ID をどのような場合にも常に収集するには、以下のコードを使用します。
    import android.provider.Settings.Secure;
     
    mobileAppTracker.setAndroidId(Secure.getString(getContentResolver(), Secure.ANDROID_ID));
    Device ID (デバイス ID)
    android.permission.READ_PHONE_STATE が必要です
    import android.telephony.TelephonyManager;
     
    String deviceId = ((TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE)).getDeviceId();
    mobileAppTracker.setDeviceId(deviceId);

    MAC Address (MAC アドレス)
    android.permission.ACCESS_WIFI_STATE が必要です

    import android.net.wifi.WifiManager;
     
    // WifiManager objects may be null
    try {
        WifiManager wm = (WifiManager) getSystemService(Context.WIFI_SERVICE);
        mobileAppTracker.setMacAddress(wm.getConnectionInfo().getMacAddress());
    } catch (NullPointerException e) {
    }
  7. アプリが異なる初期アクティビティ (例えば deep-linking (ディープリンキング) など) で起動する場合、それぞれ起動可能なアクティビティが必ず MAT を初期化し measureSession を呼び出すようにします。この目的のため、以前の MAT の初期化コードを本来のクラスに配置することを検討してください

留意事項

"your_advertiser_ID" および "your_conversion_key" の各値は、MAT でモバイル アプリを作成したときに MAT により提供される広告主 ID およびコンバージョンキーに関連付けされています。広告主 ID およびコンバージョンキーの詳細については、Finding Advertiser ID and Conversion Key (広告主 ID およびコンバージョンキーを見つける) をご覧ください。

延期ディープリンキング機能は、Android 用 MAT SDK バージョン 3.7 以降でのみ利用可能です。延期ディープリンキングの詳細については、Implementing a Deferred Deeplink (延期ディープリンキングを実装する) をご覧ください。

アプリにすでに既存のユーザーベース (アプリにインストール済みの人々) があり、その後 MAT SDK を実装した場合、MAT はどのユーザーが新規でどれが既存であるかを判定できないため、既存ユーザーを新規インストールとしてカウントします。MAT の既存ユーザーを特定するにはまず、"measureSession" を呼び出す前に、これらのユーザーの "setExistingUser(true)" を呼び出します。既存ユーザーの移行の詳細については、handle existing users prior to SDK implementation (SDK 実施前の既存ユーザーを扱う) をご覧ください。

アトリビューションをより均一かつ簡略にするには、Unique Identifiers for Attribution (アトリビューションの固有の識別子) で説明される通り、デバイス識別子の収集を検討してください。

試験およびトラブルシューティング

モバイルアプリでの MAT SDK 実装を試験するには、試験環境を創り出さずとも MAT プラットフォーム自体から行うことが可能です。Testing Your Mobile App (モバイル アプリを試験する) をご覧ください。

“hard-coded” (ハードコード) デバッグモードを使用せずに SDK 統合を試験する場合、MobileAppTrackingâ„¢ (MAT) ’ はインストールおよび/またはイベントをブロックする可能性があります。SDK 統合の試験時に debug mode (デバッグモード) を使用すると、MAT 内の測定エンジンに複製リクエストをチェックしないよう (SDK サーバーと MAT サーバーとの間の通信が機能しているか確認できるよう) 指示が出されます。

イベントを測定する

モバイルアプリに MAT SDK を実装してロギングセッションを開始すると、登録およびアプリ内購入といった多種多様なアプリ内イベントのロギングへと移行できます。

アプリ内イベントのロギングと分析により、アプリの機能と広告戦略の両方を効率的に最適化できます。利益はあるでしょうか?モバイルアプリとのユーザーインタラクションを理解することで、コストの保持、エンゲージメント、および生涯価値 (LTV) の比較が可能になりますので、効果的で収益性の高い広告キャンペーンの構築能力に直接的な影響が現れます。

詳しく知るには?In-App Events (アプリ内イベント):Which Ones You Should be Measuring and Why (測定すべきものとその理由) をお読みください。

アプリ内イベント

Have a Question? Please contact support@tune.com for technical support.