0

だから、私はAndroidアプリケーションを持っています。私は..複数の画面または何かにメニュー>バージョン情報ボタンがあるとしましょう。ユーザーがそれをプッシュする頻度を追跡し、ユーザーがアプリケーションを終了したときに、そのカウントをリモート サーバーに送信したいと考えています。彼らがアプリケーションを再起動したら、そのカウントを 0 にリセットする必要があります。

これまでのところ、いくつかの単純な静的クラスを想像しています

public static class ButtonCounter
{
  static int Count;
  public static void Start()
  {
    Count=0;
  }
  public static void Increment()
  {
    Count++;
  }
  public static void Stop()
  {
    //send to server
  }
}

Startここで難しいのは、 andStopメソッドを各アクティビティのOnStartandメソッドにグローバルに挿入する必要があることです...それでも、アプリケーションのある画面から次の画面に進むときに呼び出されないOnStopように、何か他のものが必要になります。Stop次。

基本的に、どういうわけか、自分が所有Stopするコードを離れるとき(つまり、アクティビティを覆い隠し、このアプリケーション内にないアクティビティに移動するとき) にのみ呼び出されるようにしたい.私が所有しているコードと、外部の (私のアプリケーションではない) コードを残しています。Start

Androidのすべてのライフサイクルがどのように機能するかでは、私の願いはおそらく不可能であることはわかっています..しかし、これを最も効果的に行う方法について、誰かが私を正しい方向に向けることができますか?

(また、Xamarin にタグを付けましたが、標準の Java コードにも同様に適用する必要があります)

4

2 に答える 2

0

ユーザーがアプリケーションを使用して実行する特定の機能を追跡し、それらを自分で開発する必要がない場合は、利用可能なオプションがあります。これが当てはまるかどうかは、質問から正確にはわかりません。しかし、特定の API を使用して、さまざまな場所に数行のコードを配置するだけで、このようなものを追跡できます。

そのような解決策の 1 つは、Flurryなどのサービスを使用することです。このようなサービスを使用すると、作業はほとんど完了します。自分で開発することだけに興味がある場合は、この回答を無視してください。これを自分で使用すると、非常に簡単でした。Flurry 変数を初期化してから、ここをクリックするか、関数呼び出しを追跡するように伝えます。

于 2013-08-16T20:26:52.973 に答える