繁体   English   中英

绑定服务和前台服务有什么区别?

[英]What is the difference between Bound Service and Foreground Service?

我试图创建一个服务,该服务可以在打开应用程序时与AppUI交互,并在关闭应用程序时继续其工作。

我听说bindService()调用创建了可以与App通信的绑定服务。 同时,一些资源说,可以通过在onStartCommand()回调内调用startForeground() ,然后使用它们与App进行通信来进一步将startService()用作前景服务。

谁能提供最好的方式来满足我的需求以及两者之间的区别?

从官方文档中: https : //developer.android.com/guide/components/services.html

当应用程序组件通过调用bindService()绑定到服务时,就绑定了服务。 绑定的服务提供了一个客户端-服务器接口,该接口允许组件与该服务进行交互,发送请求,接收结果,甚至通过进程间通信(IPC)跨进程进行交互。 只要绑定了另一个应用程序组件,绑定服务就会运行。 多个组件可以一次绑定到服务,但是当所有组件取消绑定时,该服务将被破坏。

前景

前台服务执行一些用户注意的操作。 例如,音频应用程序将使用前台服务来播放音轨。 前台服务必须显示状态栏图标。 即使用户未与应用程序进行交互,前景服务也将继续运行

看来您应该使用前台服务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM