我有一个可以从两个来源启动的活动。每个源都会启动它自己的活动实例: 1.从应用程序内部 2.来自外部服务
我的问题在于服务。该服务需要能够控制Android屏幕上活动的可见性(隐藏并显示活动)。
目前,我按照以下意图从服务开始活动:
Intent appIntent = new Intent("Custom_Action");
appIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
startActivity(appIntent);
我的问题是,如何控制活动的可见性。也许通过将活动绑定到服务?
答案 0 :(得分:0)
我认为你误解了服务和活动的关系。服务在后台运行,做到了。它没有UI,也没有办法让用户与之交互。活动可以发送服务消息并查询其状态,但服务无法将信息推送到活动。如果您希望服务通知用户您可以发布通知。然后让该通知启动您的活动,然后该活动将连接到该服务。没有办法强制从服务中打开活动,因为无法知道您的用户当时是否正在查看他们的设备。