问题是:服务每1小时向我发送一个数据,我需要启动Activity1。如果我什么都不做,它的所有时间都会创建相同的Activity1,并且在5小时内我将有5个相同的活动...那么,如何在新活动开始之前杀死活动? 谢谢!Android:服务启动活动
Intent dialogIntent = new Intent(getBaseContext(), someClass.class);
getApplication().startActivity(dialogIntent);
问题是:服务每1小时向我发送一个数据,我需要启动Activity1。如果我什么都不做,它的所有时间都会创建相同的Activity1,并且在5小时内我将有5个相同的活动...那么,如何在新活动开始之前杀死活动? 谢谢!Android:服务启动活动
Intent dialogIntent = new Intent(getBaseContext(), someClass.class);
getApplication().startActivity(dialogIntent);
那么,如何杀活动之前,新的开始?
你不知道。
首先,你的用户会用狩猎刀攻击你,在不知不觉中弹出一个活动。你不知道他们在做什么(玩游戏,输入文字信息等)。除了基于直接用户输入之外,只有少数应用程序(如VOIP客户端和闹钟)应显示活动。
其次,您不会从服务中“杀死活动”。而是在您的Intent
上放置适当的标志,以将现有活动置于最前(如FLAG_REORDER_TO_FRONT
),而不是创建新标志。
“你的用户会用狩猎刀攻击你弹出”我知道它的坏主意......但这就是他们想 – Jim 2011-02-23 14:20:55
当您只需更新旧的活动时,就没有必要杀死一个活动。 杀死活动并重新实例化它只会导致不必要的开销。
只需编写代码以在每次获取新的Intent时重置现有活动的状态。
希望在那里应该有粘性帖子许多doesn懒得检查元BTW +1好评 – ingsaurabh 2011-02-23 11:09:50