2

のアプリがありwebviewます。私のサイトでは、登録とログインが可能です。ユーザーがアプリを初めてインストールする場合、アプリはデバイスを に登録しますGCM。ただし、実際にサイトにログインするとwebView.load_url、アプリを最初に起動したときにのみ実行されるパラメーターとして gcm_id がアタッチされているため、gcm_id はサーバーに送信されません。

アプリの 2 回目の実行を待たずに gcm_id をリロードまたは送信するにはどうすればよいですか? 私がそれを助けることができれば、ページの読み込みごとにURLを追加する場所でも、それを継続的にしたくありません。他の例を見てきましたが、私の問題を解決するものはありません。ところで、問題があれば、私のサーバーはphpを実行します。

4

1 に答える 1

0

2行のコードで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 に答える