2017-02-19 26 views
0

我做了一个android应用程序,但我希望能够在客户端运行应用程序后更新某些值(假设我有x = 5;在代码和新版本中,我想要x = 10;相反),就像您从Play商店下载的应用程序通知您更新的方式,并且您可以安装最新版本。我是否需要使用GCM制作可更新的Android应用程序?

我看不出在移动设备上本地安装应用程序时这是如何实现的,所以我想到了云解决方案。还有另一种方法可以做到吗?而Facebook和Messenger等应用如何向用户发送通知?

+0

为什么你不使用playstore? –

+0

如果您在将应用推送到商店之前知道这些未来的配置更改,那么您应该实施某种运行时配置模式(或远程配置),并且一种推荐的方法是使用GCM作为获取这些新配置的触发器。 如果你无法预测它,那么只需发布新的更改与新的apk版本。 – AnixPasBesoin

+0

@AnixPasBesoin我只能预测会有变化,但不会改变确切的区域。 我并不是真的要将应用程序推向playstore,主要是因为它是一个众所周知的应用程序,旨在供我周围的人使用,以研究他们的习惯和其他事物,因此我打算在本地分发它 –

回答

1

假设您正在讨论更改值(即应用程序的状态),而不是实际尝试下载新代码,那么您有几个选项。

如果是这种情况,那么您真正想要做的就是让您的应用程序意识到需要更改某些内容。 (这可能只是一个通知,有一个新版本,用户应该从Play商店下载)

有至少两种方式的信息到您的应用程序。

GCM是一种选择,但不是唯一的选择。

GCM用于“推送”通知,即即使他们当前正在使用您的应用程序,也希望发送您的应用程序或用户的通知。为了使用GCM,您需要托管某种服务器,并在服务器认为需要时发送通知。

另一种选择是将您的应用程序“检入”您的服务器并下载一些内容。内容可能包含需要更改的值,或者仅仅是应用程序应通知用户他/她应该采取一些进一步的操作来更新与应用程序有关的内容。这也需要您托管一台服务器。

第二个选项更容易,主要是因为要通过GCM发送您的应用程序消息,您几乎必须能够执行第二个选项。 Android平台提供了许多life cycle hooks,它们为您提供了与您的服务器“签入”的机会。例如,在活动的onResume期间可能是“登记”的好地方

相关问题