触发onSaveInstanceState事件时重新启动活动

时间:2012-04-17 11:52:58

标签: android android-activity

当用户尝试通过按主页按钮启动主屏幕时,我尝试使用以下代码重新启动我的活动。

@Override
public void onSaveInstanceState(Bundle state){
    try{
        Intent i = new Intent(this, LockerAppActivity.class);
        startActivity(i);
    }catch(Exception ex){
        Toast.makeText(this, ex.getMessage(), Toast.LENGTH_LONG);
    }
}

没有异常发生且代码触发。但活动没有开始。我做错了什么?

1 个答案:

答案 0 :(得分:4)

第1步:删除onSaveInstanceState()实施。

步骤2:当用户通过按下主页按钮尝试启动主屏幕时,不要尝试“重启[你的]活动”,因为这是不必要的。

步骤3:修复您认为遇到的任何导致您尝试“重启”技术的问题。

例如,给定类名LockerAppActivity,我猜你正试图创建一个容易被击败的“锁定屏幕”。考虑到任何人都可以通过它们,为什么你在烦扰我。无论如何,确保应用程序在用户按下HOME时运行的正确方法是成为主屏幕。