1

Android アプリ内で Google アナリティクス V2 のベータ 4 を使用しています。便宜上、次のように別のクラス (シングルトン) にラップしています。

private AnalyticsTracker(Context context) {

    GAServiceManager.getInstance().setDispatchPeriod(5);
    GoogleAnalytics googleAnalytics = GoogleAnalytics.getInstance(context);

    googleAnalytics.setDebug(true);

    tracker = googleAnalytics.getTracker(context.getString(R.string.ga_trackingId));
}

さらに使用するために、アクティビティ追跡には EasyTracker を使用し、イベント追跡にはトラッカー メンバー変数を使用します。

public void onActivityStart(Activity activity) {
    EasyTracker.getInstance().activityStart(activity);
}

public void onActivityStop(Activity activity) {
    EasyTracker.getInstance().activityStop(activity);
}

public void trackEvent(AnalyticsEvent event) {
    tracker.sendEvent(event.category, event.action, event.label, 0L);
    GAServiceManager.getInstance().dispatch();
}

問題は、コンストラクターの setDebug(true) が無視されているように見えることです。これは、LogCat に出力がなく、私の操作がレポートに表示されるためです。analytics.xml でデバッグ フラグを設定していません。

そのようにして、xml ファイルでフラグを true に設定すると、期待どおりに機能し、分析はイベントを LogCat に記録します。

コードからの呼び出しを無視する理由は何ですか?

ありがとう

4

1 に答える 1

1

<bool name="ga_debug">false</bool> デバッグの無効化を有効にするために、valuesフォルダーのanalytics.xmlで使用 します。

analytics.xml:

<!-- Replace placeholder ID with your tracking ID -->
<string name="ga_trackingId">UA-123456-2</string>

<!-- Enable automatic activity tracking -->
<bool name="ga_autoActivityTracking">true</bool>

<!-- Enable automatic exception tracking -->
<bool name="ga_reportUncaughtExceptions">true</bool>

<!-- Enable debug -->
<bool name="ga_debug">false</bool>

<!-- The screen names that will appear in your reporting -->
<string name="com.example.myapp.MainActivity">any name</string>

<!--The inverval of time after all the collected data  should be sent to the server, in seconds.-->
<integer name="ga_dispatchPeriod">30</integer>

参照:リンク

于 2013-02-11T11:05:38.027 に答える