所以,我有一个 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
方法全局插入到每个活动的OnStart
andOnStop
方法中......即使那样它仍然需要其他东西,这样Stop
当你从应用程序的一个屏幕前进到时不会调用它下一个。
基本上,不知何故,我只想Stop
在它离开我拥有的代码时被调用(即,隐藏活动,并移动到不在此应用程序内的活动)..我只想Start
在它进入时被调用我拥有的代码并留下外国(不是我的应用程序)代码。
我知道我的愿望可能无法实现,Android 的生命周期是如何运作的。但是有人可以推动我朝着如何最有效地做到这一点的正确方向前进吗?
(另外,我标记了 Xamarin,但它也应该同样适用于标准 Java 代码)