2016-06-07 439 views
4

我正在构建一个简单的游戏,2人可以相互对决。我使用GameSpark作为后端。我的问题是,只要玩家#1施放了一个正在引导的咒语,玩家#2只有在他的屏幕开启并聚焦时才能看到窜过。Unity Android在后台运行

当玩家的#2屏幕关闭时,该应用程序不再活动,因此该咒语不会在他身上投掷。当玩家#​​2打开屏幕时,引导开始,但玩家#1已经在前一段时间完成了引导。

我认为这与Android系统的工作方式有关。它将不关注的应用程序暂停。

我现在的问题是,我如何确保玩家#2在无需使用任何第三方服务保持应用程序存活(以避免巨大电池消耗)的情况下获得通知,以及也不需要使用推送通知(从我听说的,如果有高负载,推不会立即发生,因为有一个队列)

+0

如何使用GCM进行通知? –

+0

这就是我所说的,这是一个推送通知,如果高负载可以延迟。在这样的游戏中,这是不可接受的。除非你了解GCM的延迟。虽然感谢您的建议。 –

+0

@JoeBlow会话在服务器上运行,并且在任何时候应用程序再次获得焦点时都没有获得游戏状态的问题。对我来说重要的是,即使屏幕关闭,用户也会收到关于传入的拼写的通知,这似乎是不可能的。 –

回答

0

Application.runInBackground只适用于Webplayer (和个人电脑,但不知道最后一个)。

Unity在Android中作为Activity运行,因此当它失去焦点时它会暂停。这是由(Android)设计和按预期工作。

Topic link