2014-04-21 44 views
0

我有一个简单的Android应用程序,它使用了一些功能,如服务和广播接收器。这是一个简单的项目,使用SignalR进行聊天。基本聊天,服务具有signalR连接并保持监听任何新消息或联系人的状态更新。如何使用SignalR Chat技术开发MvvmCross应用程序?

然后,我有一些广播接收机:

  • 当收到新邮件在chatList
  • 增加在线时收到一个新的联系人更新contactList启动该服务,

因此,它连接到使用SignalR实现的服务器,并执行chatWebServer所需的所有服务器作业。

所以,我想重新编写这个应用程序,使用MvvmCross,所以我可以有一个WindowsPhone,iOS和Android版本。我知道MvvmCross中的消息服务可以更改广播接收器,但是Android服务/ iOS长时间任务/ Windows后台任务将作为MvvmCross中的内容实现吗?将有可能在Core项目中实现它,所以我可以在所有平台中重用它?任何人都可以帮助它如何构建?

谢谢方面, 加布里埃尔巴斯托斯

回答

1

您仍然需要依靠什么平台具有供您使用。所以在Android上,你仍然需要一个BroadcastReceiver或至少一个具有SignalR连接的服务,否则如果应用程序关闭,它将无法生存。

iOS和Windows是有点不同的故事,你不允许有东西在后台运行。所以在这里你可能需要使用推送通知来通知新消息。虽然在Windows Phone上,您可以有计划任务或也称为后台代理,但我认为您最多可以每60秒做一次。

在iOS上,你运气不好,你根本无法在后台做东西,除非你使用的是定位服务或类似的东西。

MvvmCross不会奇迹般地做任何事情,也不允许创建一个平台不提供的服务。

相关问题