メインコンテンツまでスキップ

自動収集

最終更新 2026/10/03

1. 自動収集イベントの有効化​

ヒント

Harmonyプラットフォームでは、この機能は現在無効になっています

EnableAutoTrackを呼び出してTDAutoTrackEventTypeを渡すと、指定したイベントの自動収集機能を有効にできます。

public enum TDAutoTrackEventType
{
None = 0,
AppStart = 1 << 0,
AppEnd = 1 << 1,
AppCrash = 1 << 4,
AppInstall = 1 << 5,
AppSceneLoad = 1 << 6,
AppSceneUnload = 1 << 7,
All = AppStart | AppEnd | AppInstall | AppCrash | AppSceneLoad | AppSceneUnload
}

自動収集イベントの説明は次のとおりです:

  • AppStart: ゲームがフォアグラウンドに移行したときにta_app_startが送信されます。プリセットプロパティ#resume_from_backgroundは、今回の起動が再起動かどうかを示します。
ヒント

注:WeChatミニゲームでは、AppStartイベントはshowイベントになります。イベント名はta_mg_showで、プロパティstart_reasonが追加されます

  • AppEnd: ゲームがバックグラウンドに移行したときにta_app_endが送信されます。プリセットプロパティ#durationフィールドは、今回ゲームがフォアグラウンドにあった継続時間を表します。単位は秒です。
ヒント

注:WeChatミニゲームでは、AppEndイベントはhideイベントになります。イベント名はta_mg_hideです

  • AppCrash: キャッチされない例外が発生したときにta_app_crashが送信されます。現在、Androidプラットフォームでは仮想マシンのキャッチされない例外を処理します。iOSプラットフォームではUnixシグナル例外とNSException例外を処理します。
  • AppInstall: アプリのインストール後に初めて開いたときにta_app_installが送信されます。アンインストール後の再インストールかどうかは区別しません。このイベントはインストール後に1回だけ送信され、以降のアップデートでは送信されません。
ヒント

注:WeChatミニゲームでは、AppInstallイベントはlaunchイベントになります。イベント名はta_mg_launchで、プロパティstart_reasonが追加されます

  • AppSceneLoad: ゲームのシーン(Scene)がロードされたときにta_scene_loadedが送信されます
  • AppSceneUnload: ゲームのシーン(Scene)がアンロードされたときにta_scene_unloadedが送信されます

TDAutoTrackEventType.Allを渡すと、現在対応しているすべての自動収集イベントを有効にできます。プロジェクトの要件に応じて、一部の自動収集イベントのみを有効にすることもできます。

// すべての自動収集イベントを有効化
TDAnalytics.EnableAutoTrack(TDAutoTrackEventType.All);

// 起動イベントと終了イベントの自動収集を有効化
TDAnalytics.EnableAutoTrack(TDAutoTrackEventType.AppStart | TDAutoTrackEventType.AppEnd);

注意:カスタムのゲストIDや共通イベントプロパティを設定する必要がある場合は、自動収集イベントを有効にする前に設定を完了してください。自動収集イベントは現在、動的共通プロパティに対応していません。

AppCrashについて、iOSおよびAndroidプラットフォームでObjective-CとJavaの例外のみを収集し、C#の例外を収集しない場合は、v2.3.1以降のバージョンで、Resourcesディレクトリにta_public_config.xmlを追加してスイッチを設定できます。次のとおりです:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- ThinkingAnalytics disable C# Exception -->
<bool name="DisableCSharpException">true</bool>
</resources>

2. 自動収集イベントのカスタムプロパティの設定​

v2.2.4以降、EnableAutoTrackを呼び出して自動収集を有効にする際に、収集するカスタムプロパティを渡すことができます。

// 自動収集イベントを有効化し、カスタムプロパティを設定
TDAnalytics.EnableAutoTrack(TDAutoTrackEventType.All, new Dictionary<string, object>() {
{"custom_key", "custom_value"}
});

SetAutoTrackPropertiesを呼び出して、特定の自動収集イベントのカスタムプロパティを指定することもできます。

注意:SetAutoTrackPropertiesは自動収集イベントの収集を有効にしません。EnableAutoTrackメソッドと組み合わせて使用する必要があります。

// 単一の自動収集イベントのカスタムプロパティを設定
TDAnalytics.SetAutoTrackProperties(TDAutoTrackEventType.AppStart, new Dictionary<string, object>()
{
{"start_key", "start_value"}
});

// 複数の自動収集イベントのカスタムプロパティを設定
TDAnalytics.SetAutoTrackProperties(TDAutoTrackEventType.AppInstall | TDAutoTrackEventType.AppStart, new Dictionary<string, object>()
{
{"install_crash_key", "install_crash_value"}
});

// すべての自動収集イベントを有効化
TDAnalytics.EnableAutoTrack(TDAutoTrackEventType.All);

3. 自動収集イベントのコールバックの設定​

v2.4.0以降、自動収集イベントのコールバックの設定に対応しています。これにより、カスタムプロパティをリアルタイムで設定したり、対応するイベントのトリガータイミングでカスタムコードを実行したりできます。自動収集イベントのコールバックを設定するには、まずクラスを新規作成してTDAutoTrackEventHandlerインターフェースを実装し、public Dictionary<string, object> GetAutoTrackEventProperties(int type, Dictionary<string, object>properties)メソッドをオーバーライドします。このメソッドの戻り値が、設定する自動収集イベントのプロパティになります。次に、EnableAutoTrackを呼び出して自動収集イベントのコールバックオブジェクトを渡します。次のとおりです:

// 1.自動収集イベントのコールバックの実装
public class AutoTrackECB : TDAutoTrackEventHandler
{
public Dictionary<string, object> GetAutoTrackEventProperties(int type, Dictionary<string, object>properties)
{
return new Dictionary<string, object>()
{
{"AutoTrackEventProperty", DateTime.Today}
};
}
}
// 2.自動収集を有効化し、イベントのコールバックを設定
TDAnalytics.EnableAutoTrack(TDAutoTrackEventType.All, new AutoTrackECB());

4. シーンの自動収集イベントの有効化​

v2.4.1以降、シーンのロードイベントとアンロードイベントの自動収集に対応しています。

シーンのロード・アンロードのデリゲートイベントを登録することで、シーンの自動収集イベントを有効にします。

MonoBehaviourスクリプトのOnEnableメソッドで呼び出すことを推奨します。

private void OnEnable()
{
// シーンのロード・アンロードイベントを監視
SceneManager.sceneLoaded += TDAnalytics.OnSceneLoaded;
SceneManager.sceneUnloaded += TDAnalytics.OnSceneUnloaded;
}

v2.5.1以降、EnableAutoTrackメソッドを呼び出してシーンの自動収集イベントを有効にできます

// すべての自動収集イベントを有効化
TDAnalytics.EnableAutoTrack(TDAutoTrackEventType.All);

// シーンのロードイベントとアンロードイベントの自動収集を有効化
TDAnalytics.EnableAutoTrack(TDAutoTrackEventType.AppSceneLoad | TDAutoTrackEventType.AppSceneUnload);
このページは役に立ちましたか?