Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有关前台服务android的问题_Android_Android Service - Fatal编程技术网

有关前台服务android的问题

有关前台服务android的问题,android,android-service,Android,Android Service,我正在android中创建一个持续运行的服务,所以我认为前景服务是最好的选择。在我即将实现它时,我对android中的前景服务有一些一般性的问题。谷歌文档帮不了我 何时可以终止前台服务? 我们需要将前台服务定义为START\u吗? 我们是否需要在android BOOt上重新启动前台服务,还是它们会自动启动。 我们一次可以从同一个应用程序启动多少前台服务。我在谷歌文档中读到过,我们可以一次指定3个前台服务,这是什么意思? 顾名思义,前台服务会中断主线程还是UI线程? 问候 乌萨夫 承载前台服务的

我正在android中创建一个持续运行的服务,所以我认为前景服务是最好的选择。在我即将实现它时,我对android中的前景服务有一些一般性的问题。谷歌文档帮不了我

何时可以终止前台服务? 我们需要将前台服务定义为START\u吗? 我们是否需要在android BOOt上重新启动前台服务,还是它们会自动启动。 我们一次可以从同一个应用程序启动多少前台服务。我在谷歌文档中读到过,我们可以一次指定3个前台服务,这是什么意思? 顾名思义,前台服务会中断主线程还是UI线程? 问候 乌萨夫

承载前台服务的进程被视为前台进程。这样一个过程被认为是最重要的,最后被扼杀。发件人:

一般来说,在任何给定的时间都只存在少数前景进程。 只有在记忆太少以至于无法使用的情况下,他们才会被杀死 无法全部继续运行。一般来说,在这一点上,设备 已达到内存分页状态,因此终止某些前台进程是非常困难的 需要保持用户界面的响应性

取决于您正在执行的任务。既然你刚才说的是持续运行服务,我相信你可能需要它。该标志对普通服务和前台服务具有相同的含义。START_STICKY标志表示,如果服务在其宿主进程终止后重新启动,则将以null意图调用服务的onstart命令。这是一种使服务意识到已重新启动的方法

3. Do we need to restart foreground services on android BOOt or they automatically start.
否。您需要为注册广播接收器并从onReceive手动启动服务

不确定,如果你能分享来源那就太好了。无论您有1个或3个前台服务,托管它的进程都被视为前台进程。托管多个前台服务会导致状态栏中出现多个通知,这让用户知道这些服务正在运行,并知道如何停止。您还可以有一个前台服务,其中多个线程运行不同的操作

5. As the name suggests does the foreground service interrupts the main or UI thread?
如上所述,前台服务使托管它的进程成为前台进程,并且用户知道该服务。除此之外,这与正常服务完全没有区别。默认情况下,服务将在UI线程上运行,长时间运行的操作需要在单独的线程上运行。如果设备有多个核心处理器,线程可以并行运行,也可以不并行运行。你可以阅读@fadden写的这篇文章。从博客:

有时人们想知道为什么他们的多线程应用程序没有 似乎正在使用所有可用的内核。这种情况通常发生在两个人身上 原因:

在内核之间迁移线程是昂贵的,性能上是明智的; 激活CPU核心是昂贵的,电池方面的。
注意:在android中,持续运行的服务总是被认为是反模式的,因为它们持续使用系统资源,从而间接影响其他应用程序。因此,如果必须使用它们,请仔细设计。

检查此项。。这可能会给你更多的信息。谢谢你让答案简洁明了。祝贺你获得50分:
3. Do we need to restart foreground services on android BOOt or they automatically start.
4. How many foreground services can we start from the same application at a time. 
I have read somewhere in very obsequious manner in google docs that we can nominate 3 foreground service at a time, what does that mean?
5. As the name suggests does the foreground service interrupts the main or UI thread?