[英]How to call function in main activity from service?
我使用startService()从主要活动中启动服务。 该服务检查本地主机上的套接字。 收到套接字后,它将从中读取数据。 我想在收到带有特定数据的套接字时隐藏通知栏。 我已经编写了位于主活动中的函数hideNotificationBar()。 问题是我不知道如何在服务的主要活动中调用此函数。 谢谢你的帮助!
从服务发送广播。 注册您的活动以接收此广播并对其采取行动。
此方法解决了存储/获取对活动的引用的问题,该引用在您的服务生命周期内可能会变为非活动状态。
缺点是只能通过广播Intent发送简单类型,Bundle或实现Parcelable的类。
我建议您从API演示应用程序中查看MessengerService和MessengerServiceActivities 。
基本上,想法是在您的活动和服务中都包含Handler
类,以Handler
两者之间的通信。 在活动中使用ServiceConnection
建立与服务的连接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.