如题,不知道大家有没有注意过,当我们首次安装我们的所开发的应用后,打开应用并按HOME隐藏,然后在此打开这个应用时,却发现重新启动了这个应用,但是按道理说应该是回复之前启动后的界面。但是在这之后在打开应用时就正常了。
我觉得这应该算是android上的一个BUG吧。具体解决办法是这样的,我们在程序启动时加入一个变量,用于判断当前程序是否正在运行。然后每次启动时都去判断这个变量,如果发现当前程序正在运行,那么新启动的界面直接finish掉。这样就解决了首次安装后重复创建应用的问题。因为第一次开启的程序并没有退出。所以应用的主线程并没有销毁。所以第二次尽管看似开启了一个新的应用,但实际上仅仅是UI线程,所以主线程是共用的。可以正确的获取到上次改变后的变量。
这个问题我分析是,首次安装应用后,android程序并没有正确的管理应用的UI的相关生命周期。然后当我们运行过一次后就恢复正常了。
我觉得这应该算是android上的一个BUG吧。具体解决办法是这样的,我们在程序启动时加入一个变量,用于判断当前程序是否正在运行。然后每次启动时都去判断这个变量,如果发现当前程序正在运行,那么新启动的界面直接finish掉。这样就解决了首次安装后重复创建应用的问题。因为第一次开启的程序并没有退出。所以应用的主线程并没有销毁。所以第二次尽管看似开启了一个新的应用,但实际上仅仅是UI线程,所以主线程是共用的。可以正确的获取到上次改变后的变量。
这个问题我分析是,首次安装应用后,android程序并没有正确的管理应用的UI的相关生命周期。然后当我们运行过一次后就恢复正常了。