2

我有一个带有webview. 我的网站允许注册和登录。如果用户是第一次安装应用,应用会为设备注册GCM. 但是,当他们实际登录该站点时,gcm_id 不会发送到服务器,因为我将它webView.load_url作为参数附加到该参数,该参数仅在您首次启动应用程序时运行。

如何重新加载或发送 gcm_id 而无需等待他们第二次运行应用程序?我不希望它是连续的,如果我可以帮助它,它会在每个页面加载时附加一个 url。我看过其他例子,但没有一个对我的问题有帮助。顺便说一句,如果这很重要,我的服务器会运行 php。

4

1 回答 1

0

我发现了一个非常好的类,如果您需要通过 http 或 https 使用两行代码发送包括身份验证在内的 http get 请求。

EasyHttpClient

非常易于使用,您可以像这样使用它。

EasyHttpClient client = new EasyHttpClient();
System.out.println(client.get("https://encrypted.google.com/"));

所以我想出的是,当他们第一次启动应用程序时,设备最初注册时会设置一个标志。然后,只要设置了该标志,它就会使用此 http 客户端定期发送请求来注册它,如果成功,它将使标志为空,不再尝试。由于该标志仅在尚未创建注册 ID 时设置,因此除非他们将其卸载,否则将永远不会再次设置它。目前看来还不错。我必须这样做,因为在他们登录之前他们是匿名的,而且我的网站无法注册匿名用户。只是想其他人可能想知道,因为我发现了各种乏味的方法,但 EasyHttpClient 是我找到的最好的方法。

顺便说一句,我这样做的原因是因为如果他们使用该应用程序一次并在那之后收到一条消息,推送通知将不起作用,所以我必须在他们第一次使用它时让它在我的服务器上注册。

于 2013-04-22T09:50:23.687 回答