gpt4 book ai didi

Android 1.5 和 1.6 调用完成 Activity 和主页按钮奇怪的行为

转载 作者:行者123 更新时间:2023-11-30 04:53:22 25 4
gpt4 key购买 nike

Android 平台 1.5

  • 我在调用 finish() 的最后打开启动画面,然后转到浏览页面。
  • 在浏览页面上,当我点击主页按钮时,它隐藏了应用程序。(Android 的多任务处理功能的 b/c)
  • 当我再次转到 Android 的桌面启动应用程序时,它从初始屏幕启动。

Android 平台 1.6

  • 我在调用 finish() 的最后打开启动画面,然后转到浏览页面。
  • 在浏览页面上,当我点击主页按钮时,它隐藏了应用程序。(Android 的多任务处理功能的 b/c)
  • 当我再次转到 Android 的桌面启动应用程序时,它总是从浏览屏幕而不是初始屏幕启动,这是为什么?

我把所有的数据都放在onsave实例中

@Override
protected void onSaveInstanceState(Bundle outState) {
outState.putString(WLConstants.READ_GPS, readGPS );
outState.putSerializable(WLConstants.SEARCH_CRITERIA, searchCriteria);
outState.putString(WLConstants.PARAM_WHERE, locationField.getText().toString());
outState.putBoolean(WLConstants.PARAM_NEAR_ME, rNearMe.isChecked());
super.onSaveInstanceState(outState);
Log.v(TAG, "onSaveInstanceState()");
}

我正在从 oncreate 方法中提取值

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(savedInstanceState != null){
Log.v(TAG,"instace found");
}else{

Log.v(TAG,"instace not found");
}
}

“找到实例”永远不会被调用意味着它永远不会以任何理由返回包?

最佳答案

我刚刚在 1.5 和 1.6 设备上用一个应用程序尝试了这个,它做同样的事情——LAUNCHER Activity 是一个闪屏,然后启动“主” Activity 并调用 finish()本身。启动 Activity 还设置了 noHistory 属性。

无论如何,在这两种设备上,按 Home 键后主屏幕都按预期显示,然后再次显示启动器图标。

不过,我认为 Android 无法保证您的进程在您从启动器图标启动时是否仍然存在。因此,您可以从任务堆栈停止的地方开始,也可以从 LAUNCHER Activity 开始。

但在您的情况下,根据我刚才的经验,您通常应该在点击启动器时出现在“浏览”屏幕上。除非您的系统重载得离谱。

无论如何,关于实例状态:您是否尝试过在方法中首先调用 super.onSaveInstanceState(outState) 是否有任何不同?

另外请注意,此方法通常仅在 Activity 被系统终止时调用;不仅仅是当它进入后台时。在这种情况下,您应该无事可做。

关于Android 1.5 和 1.6 调用完成 Activity 和主页按钮奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2049084/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com