我在应用程序退出处理方面需要一些帮助。 我的申请有多个活动说: - EntryAct,Act1,Act2 .... Act10。
当用户在任何这些活动上按下主页键时,我需要进行一些标记设置。
在每个应用程序中处理主页键无法进行活动! 有人能说出如何实现这一目标吗?
无法更改所有活动的OnPause,OnStop或OnDestory中的任何内容Act1 ... Act10。 : - (
答案 0 :(得分:7)
如果您使用自定义Application类,则可以解决您的问题。说像
public class MyApp extends android.app.Application
{
}
并在此处将您希望在应用中调用的代码放在其中。
现在只需要在Activity
这样的
MyApp app = (MyApp) getApplication();
app.setUpBeforeClosingApp();
你可以把它放在每个onDestroy()
的Activity中,然后从这里开始代码处理,然后才能实现关闭操作。
答案 1 :(得分:1)
首先,可以间接检测主页键事件,如我的帖子所示,当按下主页时杀死应用程序:How to close Android application?
还可以确定活动是否是其onDestroy()方法中的根活动,然后让它调用辅助类来执行最终处理(如果它是根活动)。更好的方法是创建一个所有活动都继承自定义的自定义活动,将最终处理逻辑放在自定义活动的onDestroy()方法中,然后让所有子类在其onDestroy()方法中调用super.onDestroy()。这与上述帖子中的内容类似:How to close Android application?以及有关在按下菜单按钮时创建设置屏幕以及处理搜索按钮和返回按钮的帖子。
我希望这会有所帮助。
答案 2 :(得分:0)
在活动不再在前台时调用的onPause()
方法中执行此操作。