StackOverflow 上有大量与活动堆栈相关的问题,但我并没有真正看到任何回答我的问题的问题。我正在开发一款(目前)有 3 种不同活动的在线游戏:
- 登录/注册
- 菜单(登录时看到,包括“新游戏”、“我的统计数据”和其他一些东西……我现在只是担心“新游戏”选项。)
- 游戏
套接字连接发生在登录/注册活动中,该活动创建了一个在后台运行的自定义服务。由于数据可以在任何时候到达,所以我使用的套接字类具有异步响应处理程序。这意味着每次收到消息时我都无法访问当前上下文。
我需要一种方法来确定收到各种消息类型时的当前上下文是什么,以便我可以相应地处理消息。例如,如果用户到达游戏屏幕(上面的#3)并收到一种消息,它应该简单地告诉游戏屏幕更新为新的游戏状态。但是,用户可能在同一个游戏屏幕上并收到不同类型的消息,上面写着“关闭屏幕 #3 和 #2 并注销用户,将他们返回到屏幕 #1”。
基本上,我试图找出获取当前活动/上下文的最佳方法,确定它是否是当前消息的正确上下文,以及如何处理它。