在我的应用程序中,我需要在应用程序关闭(暂停)时调用代码,然后在应用程序再次启动时再次运行代码(恢复)。例如,我调用一个Web服务,在应用程序启动或退出时同步数据。这在iOS中很容易,因为中央应用程序恢复和暂停方法。
我理解Activity中的OnPause和OnResume,但有没有一种处理这个的中心方法?用户可以将应用程序保留在Activity3上并稍后返回,或者在另一个屏幕中等等。我不想在每个Activity的OnPause和OnResume中使用相同的代码来处理“app”启动和关闭代码例程。
有什么建议吗?
谢谢。
答案 0 :(得分:3)
你可以创建一个只以某种方式处理onResume()和onPause()的公共Activity,然后让每个Activity直接从那个Activity扩展而不是Activity。
答案 1 :(得分:1)
我会考虑对Activty进行子类化,让你的每个活动扩展它,并在你们任何一个暂停或恢复时做你需要做的事情。
您可以在Application类中使用一些静态成员,您的新活动库将使用这些成员来跟踪状态或存储您需要的任何内容。
此外,Application类有一个onCreate()方法,该方法将在每次启动应用程序时运行。但是,应用程序没有暂停或恢复。
答案 2 :(得分:1)
创建一个由所有其他活动扩展的主活动,并覆盖onPause和onResume。
但是如果你想扩展另一个Activity类,比如ListActivity,你将面临的问题。
另一种方法是创建一个新类,该类扩展应用程序并覆盖其onCreate并创建一个静态方法,该方法充当onPause并通过每个活动手动调用它