android – 当主要活动在后台运行时如何启动活动?

android – 当主要活动在后台运行时如何启动活动?,第1张

概述我创建了一个应用程序,使用户能够在应用程序以后台模式运行时设置是否要接收通知.如果启用了通知,则应启动活动(对话框应显示在屏幕上). 我尝试通过以下方式启用它: @Overridepublic void onProductsResponse(List<Product> products) { this.products = products; moboolo.setProduct 我创建了一个应用程序,使用户能够在应用程序以后台模式运行时设置是否要接收通知.如果启用了通知,则应启动活动(对话框应显示在屏幕上).

我尝试通过以下方式启用它:

@OverrIDepublic voID onProductsResponse(List<Product> products) {    this.products = products;    moboolo.setProducts(products);    if(moboolo.getautomaticNotificationsMode() != 0 && products.size() > 0){        if(isRunningInBackground)        {            Intent intent = new Intent(this,ProductListActivity.class);            intent.setAction(Intent.ACTION_MAIN);            startActivity(intent);        }    }    drawProducts(products);}

这是主要活动的方法.当onPause()执行时,isRunningInBackground设置为true.
当我尝试在主应用程序在后台运行时调试它

startActivity(intent)没有效果(活动没有出现).

当主要活动在后台运行时(调用onPause()之后)有没有人知道如何中断逻辑以便从主活动启动活动?

谢谢.

解决方法 您无法强制从运行后台的应用程序中显示活动. The documentation says:

If the application is running in the background and needs the user’s attention,the application should create a notificaiton that allows the user to respond at his or her convenIEnce.

如果您的活动暂停,则用户可能在其他应用程序中执行其他 *** 作,并且可能不希望您的活动突然显示在他们当前正在执行的 *** 作之上.

您应该使用Status Bar Notification.这允许您的应用程序在状态栏中放置一个图标.然后,用户可以向下滑动状态栏抽屉并单击您的通知以打开您的应用程序并显示相关的活动.这是绝大多数AndroID应用程序在后台运行时通知用户的方式.

总结

以上是内存溢出为你收集整理的android – 当主要活动在后台运行时如何启动活动?全部内容,希望文章能够帮你解决android – 当主要活动在后台运行时如何启动活动?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1123013.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存