可以管理Android中两个不同进程(服务和活动)之间的通信via Messenger or AIDL:活动绑定到服务就足够了。
但是,如果此活动有一个或多个子活动,会发生什么? 从主要活动开始子活动的那一刻起,我希望将通信重定向到子活动;同样,当子活动被破坏时,我希望将通信重定向回主要活动等。
示例#1:
示例#2:
如何处理这些案件?
答案 0 :(得分:5)
您希望拥有一个负责绑定服务并坚持连接的实体,并且您需要该实体不是Activity实例。试试这个:
通过这种方式,您无需担心创建和拆除不同活动与服务之间的连接。您的整个应用程序(所有活动)与您的服务之间只有一个连接。
我意识到我没有解释所有的血腥细节,但希望你能得到基本的想法。
答案 1 :(得分:1)
你有没有想过以下解决方案? 您可以使用命令startService()启动活动,然后与Intents和Receivers通信,而不是将Activity绑定到Service。 通过这种方式,您可以启动其他活动,为其状态调用服务并在任何地方与其进行交互:)