广播接收器和服务有什么区别?

时间:2013-01-04 05:02:14

标签: android

我为广播接收器和服务编写了程序,但我在清单文件中混淆了注册服务和接收器的一些基础工作,有人会给我清楚的想法吗?提前谢谢。

3 个答案:

答案 0 :(得分:4)

服务

  • 当您想在后台执行某些操作时使用它,可以使用后台服务完成任何长时间运行的过程。

  • 即使应用程序已关闭

  • ,也会始终在后台运行
  • 例如,您希望在应用程序关闭时播放音乐。在这种情况下,服务将在后台运行音乐。

广播接收器

  • 当您想要在某些事件中触发某些内容或代码时使用它。例如,事件可以在Boot of Device上。

  • 通常情况下,如果您愿意,系统会通过注册发送一些可以通过您的应用收到的信息。通过使用onReceive方法,当你发生这种事情时,你可以做你想做的事情。例如,系统将在新sms到达或Booting done

  • 时发送BroadcastReceiver
  • 例如,如果您想在设备启动时执行某些操作,请更改日期和时间等。

答案 1 :(得分:1)

服务用于执行长时间运行的操作,无需用户交互或为其他应用程序提供功能。

A Service needs to be declared in the AndroidManifest.xml via  
a <service android:name="yourclasss"> </service> and the implementing class  
must extend the Service class or one of its subclasses.  

To start Services automatically after the Android system starts you can register  
a BroadcastReceiver to the Android android.intent.action.BOOT_COMPLETED system  
event. This requires the android.permission.RECEIVE_BOOT_COMPLETED permission.

有关详细信息,请查看此http://www.vogella.com/articles/AndroidServices/article.html#pre_broadcastreceiver

答案 2 :(得分:0)

广播接收器是Android组件,允许注册系统或应用程序事件。一旦发生此事件,Android将通知所有已注册的活动接收者。

服务是一个应用程序组件,表示应用程序希望在不与用户交互的情况下执行较长时间运行的操作,或者为其他应用程序提供要使用的功能。

在这里解释一切都很漫长 我有来自vogella的2个很棒的教程链接

Broadcast Receiver

Service

如果您在阅读教程后还有其他问题,请随时在评论中提问我:)