Android:将数据传递给服务

发布于 2024-11-27 10:31:27 字数 272 浏览 1 评论 0原文

我实际上正在开发一个基于与活动共享数据的后台服务的 Android 应用程序。

我想知道是否最好调用bindService以便活动可以调用服务的方法,或者是否最好使用活动中的sendBroadcast并从服务中注册接收器。

两者都有效,但推荐哪一种呢?

此外,我的服务实例化处理本地化、传感器的类......这些类还需要通过服务传递数据。同样的问题,我应该更好地使用这些类中的 bindservice 或 sendBroadcast 来与我的服务进行通信吗?

谢谢。

I'm actually working on an android app based on a background service sharing data with activities.

I was wondering If it's better to call bindService so that activities can call service's methods or if it's better to use sendBroadcast from the Activity and registerReceiver from the service.

Both work, but which one is recommended?

Furthermore, my service instanciates classes handling Localisation, sensors... Those classes also need to pass data with the service. Same question should I better use bindservice or sendBroadcast from these classes to communicate with my service?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

情话已封尘 2024-12-04 10:31:27

如果您想传递数据,请使用 BroadcastReciever,因为它的 OnRecieve 方法需要 Intent 作为 argumentmnt。因此,您可以使用 intent 通过意图传递数据.putxxxxx().. 当您想要进行一些定期检查或调用某些操作等时,您会再次发现这个优势。

If at all if you want to pass data then use BroadcastReciever because its OnRecieve method expects an Intent as arguemnt.. So you can pass your data through intent using intent.putxxxxx().. and again you will find this Advantageous when you want do some periodic checking or invoke some actions etc..

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文