我正在使用服务器端的flex和red5为android设计一个视频会议应用程序。我有3个视图:**聊天视图(文本聊天) - 流视图(将显示其他用户流)和我视图(将显示您自己的相机)**。
现在的问题是,每当我切换视图时,例如从聊天视图切换到流视图,就不会收到传入的聊天消息。有没有办法解决这个问题。我希望即使在切换到另一个视图后也会显示传入的聊天消息。任何帮助将不胜感激。我附上了一些照片:
首先,我将我的手机中的应用程序作为[jamie]打开,然后转到用户[clientFromWindows]的流显示的成员选项卡(即流视图):
现在我开始从[clientFromWindows]发送消息,这是运行相同应用程序的android模拟器:
现在,在我的手机中,当我回到聊天视图时,即。 [jamie]的聊天视图[clientFromWindows]显示的消息未显示。
请帮忙。
答案 0 :(得分:0)
要做你想做的事,你需要有一个控制器,一个演示模型,一个单例,或者“在这里插入你的设计模式”,它们存在于你的视图之外。该控制器将包含从服务器获取数据并更新应用程序模型的所有逻辑。
因此,当您从聊天视图进入视频视图时,控制器仍将与服务器进行通信以接收新的聊天消息。新的聊天消息将添加到您的应用程序的“聊天模型”中。用户下次访问聊天视图时,可以从模型中呈现新消息。
由于移动设备的资源有限(与台式机/笔记本电脑相比),因此当您离开它们时,Flex移动应用中的View
类会被丢弃。
我对此进行了简化,您的控制器不一定与服务器进行通信,您可以将后端的通信委托给另一个类。但出于解释的目的,我忽略了构建MVC应用程序时可能遵循的设计模式和/或最佳实践。