android - 启动 Activity 时停止应用程序进入前台

标签 android android-intent splash-screen android-homebutton

所以,我有一个带有启动画面的应用程序,它会在加载完成后启动另一个 Activity 。当用户在加载时点击主页按钮时,应用程序会进入后台,然后在该 Activity 启动后返回前台。有什么办法可以阻止这种情况发生吗?

最佳答案

两件事:

首先,确保您正在拆除对 onPause 中位置服务的引用。我假设您使用的是 Google 的 API 客户端。如果你不是,你真的应该是。所以在 onPause 中,确保取消注册监听器:

@Override
public void onPause()
{
    // Tear down Google API Client.
    if (googleApiClient != null)
    {
        if (googleApiClient.isConnected())
        {
            // Turn off location polling.
            LocationServices.FusedLocationApi.removeLocationUpdates(googleApiClient, this);
        }

        // Avoid leaks by making sure callbacks get unregistered.
        googleApiClient.unregisterConnectionCallbacks(this);
        googleApiClient.unregisterConnectionFailedListener(this);
        googleApiClient.disconnect();
    }
}

但是:我认为您对这个问题的解决方案考虑过度了。为什么有两个 Activity ?为什么不一个,并在您获得位置修复之前处于“等待状态”?您的等待状态可以是任何状态。或者如您所说的全屏启动(使用 RelativeLayout 并堆叠 View )。修复后,淡出飞溅。

然后将位置存储到 savedInstanceState 包中。当您的 Activity 状态发生变化时,您将知道不再显示启动画面。

关于android - 启动 Activity 时停止应用程序进入前台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33788053/

相关文章:

android - 评分栏像代号一的android

android - 如何检查有多少用户已更新到 Google Analytics 中的新版本?

java - 导致构建错误的 Android Intent setType 和 addCategory 方法

Android:如何在第一次打开应用程序时显示 "quick tour"?

c# - VSTO 启动画面或进度条

android - 我应该使用加载器从我的数据库中填充我的微调器吗?

android - Activity setRequestedOrientation 横向与 reverseLandscape?

java - 切换 Activity 并将字符串作为额外内容发送到另一个 Activity

fragment 中的 Android 加载屏幕

java - 显示启动画面直到应用加载完成