gpt4 book ai didi

android - 当应用程序在后台时,广播接收器在前台打开 Activity ?

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

我有一个接收互联网连接的广播接收器..一旦它没有找到任何连接,它就会打开我的启动 Activity 说“没有互联网连接”......直到现在一切正常但是当用户使用设备主页按钮将应用程序置于后台,然后关闭互联网连接,当应用程序在后台运行时,启动 Activity 进入前台。我不希望发生这种情况,启动 Activity 应该会打开,但只能在后台打开。

  @Override
public void onReceive(Context context, Intent intent) {


// SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);

boolean isNetworkDown = intent.getBooleanExtra(
ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);

if (isNetworkDown) {
Log.d(TAG, "onReceive: NOT connected, stopping UpdaterService");
Intent myintent=new Intent(context,NoConnectivity.class);
myintent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(myintent);

} else

{

Log.d(TAG, "onReceive: connected, starting UpdaterService");
NoConnectivity.h.sendEmptyMessage(0);


}
}

最佳答案

startActivity 会自动将该 Activity 置于您正在查看的任何 Activity 之上的前台。用户可以使用后退按钮返回到上一个。这是通常的工作方式。

但是,您可以使用 moveTaskToBack(true) 将 Activity 发送到后台。

Here是功能说明。

编辑

查看 this question并使用该解决方案查看您的 Activity 是否在后台进行。如果是,则使用我上面建议的方法将新 Activity 发送到后台。

关于android - 当应用程序在后台时,广播接收器在前台打开 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11426173/

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