2012-04-11 13 views
1

GoogleアナリティクスをAndroidのディスパッチ間隔(つまり、tracker.startNewSession("xxxx", 10, this);)で使用しています。しかし、開発中に、SDKがデータベースがいっぱいで、最後のイベントがLogCatに格納されていないことが印字されていたことに気づきました。理論的にバックアップし、あたりとして(一部のイベントを失うことからそれらを停止することになる、より頻繁にイベントを送るAndroid用Googleアナリティクスの手動配送

  1. :だから私はそれは一石二鳥でしょう把握すべてのAPI呼び出しの後に手動で.dispatch()メソッドを呼び出すことにしました私が開発で見たlogcatエントリ)。
  2. モバイルラジオがアクティブな間にGAイベントを送信してバッテリを節約します。

私がそれをリリースした後、私のGA統計(ページビューなど)は約35%高かったことがわかりました。これは2つの事のうちの1つを意味するに過ぎず、多くのGAイベントが以前に失われていたか、または誤っていくつかのイベントを送信すると倍増しています。

誰でもこの問題を解決する良い方法について考えていますか?現在、モバイルのページビューや訪問を報告している場合は、これは素晴らしいことです。しかし、私が手動で.dispatch()を呼び出しているのでデータが正確に追跡されていない場合、それは悪いことです。この変更を元に戻す必要があります。

答えて

1

これは、私が手動でディスパッチを呼び出す割合を増やしたときにも私が見たものです。さらに、データをローカルに格納し、サーバーにバッチ送信するので、データが数日間滞っても驚くことはありません。そして、データは、に送信され、が生成されていない日に関連付けられているため、にスキュード統計が発生します。

PS:新しいサンプルアプリを見てから、Android SDkを提供しましたか?ディスパッチを改善し、ネットワークアクセスでメインスレッドにヒットしないために、AsyncTaskですべてを実行します。私はさらに、すべてのイベントをキューに格納し、1つのAsyncTaskだけを実行することでそれを改善しました... Githubに入れる必要がありますが、まだそれをクリーンアップしていません。

+0

からEasyTrackerのjarファイルとソースをダウンロードすることができます。 –

+0

私はこれが正しい答えであることを証明することができれば;-)この答えはすべて私の前提を確証するものですが、誤って報告していることを証明するものではありません。私はまだそれを調査している、心配しないで、私はいつも戻って来て答えを受け入れる。 –

0

EasyTrackerサンプルアプリケーションは、パフォーマンスを改善するためにAsyntTaskとネットワークキューを使用します。 bitboxで説明したように、これはバッテリ寿命を改善し、手作業で発送する必要がなくなり、トラックの損失が少なくなります。

あなたは、これはあなたが探していたものである場合は、正しい応答を属性してくださいhttps://code.google.com/p/analytics-api-samples/downloads/list

関連する問題