我在Android平板电脑上有一个网页链接,点击后会全屏运行Chrome。
在该网站中,我可以点击链接并打开我的应用程序(在Android Studio中开发)。但是一旦该应用程序打开,我希望它立即将焦点重新发送回Chrome。我见过有人说在这个论坛上有一种切换任务的方法,但他们并没有提供如何做的代码或链接。
或者从任务管理器中禁用我的应用程序(但仍然可以运行)我也许会这么好吗?
我要做的是从Chrome网站向应用程序发送启动和停止命令。即第一次,它打开并开始'应用程序做某事。应用程序保持打开状态,直到它收到“停止”消息为止。来自网站的命令。重复过程。
我在onResume函数中尝试了intent的getdata,但由于应用程序没有发送'焦点'在调用网站后回到网站,Chrome会在下次向其发送数据时调用onResume。该应用是“不可见的”,因此当用户打开时,用户会继续浏览Chrome网站,甚至不知道应用已经打开。但就像我说的那样,即使他们在Chrome中继续使用,现在实际关注的是其他应用。这有点奇怪。
所以,这有点不同,我必须切换回已打开的Chrome链接,而不仅仅是Chrome ..如果你知道我的意思。
有关如何在我的应用程序中以编程方式执行此操作的任何帮助表示赞赏。
答案 0 :(得分:0)
当您的应用程序打开启动命令时,启动后台服务并告诉它启动,然后完成()活动(如果您有) - 这会将控制权返回给操作系统,这将显示上一个活动 - chrome < / p>
当您的应用收到停止命令时,请执行相同的操作 - 将停止命令发送到您的后台服务,然后完成
Android有几种服务类型explained here。如果这是一个选项,通常你可以完全避免starting a service directly from another app之外的任何活动,但是因为我认为你正在使用浏览器中的深层链接功能,所以我建议一个没有UI的活动捕获该链接并按照解释启动服务上述
答案 1 :(得分:0)
找到了这个,有效:
super.onBackPressed();