2017-10-09 8 views
0

私は1つのチャットアプリケーションを開発しています。ステータスが「1」の場合、状態が「0」の場合、ユーザーがオンラインになっていることを示しています。ユーザーがオフラインであることを示しています。
ステータスAPIをバックエンドチームから取得しました。したがって、私の問題は、ユーザーがチャットアプリケーションをアンインストールしても、ユーザーがオンラインになっていることを示している場合はいつでも発生します。
この問題を解決するにはどうすればよいですか?
ありがとうございます。ユーザーがアンドロイドでアプリケーションをアンインストールすると、オンライン状態からオフライン状態に更新する方法

+1

アプリをアンインストールしても何も起動できません。 xxx秒ごとにpingサーバーを実行すると、何ができるのですか。ユーザーがサーバーにpingを実行しない場合、彼はオフラインです。 –

+0

https://stackoverflow.com/questions/3013823/perform-a-task-on-uninstall-in-android –

+0

@VladMatvienkoでも、私はonBackpressed()またはonDestroy()を使ってサーバーに送信しています。メソッド。 –

答えて

0

ここで問題となるのは、ユーザーがアプリをアンインストールすると、Androidはプロセス、サービス、アプリケーションに関連付けられて作成されたものすべてを殺すだけだということです。そして、あなたのアプリ内で最後の「さようなら」メッセージを送信する方法は本当にありません。

しかし、バックエンドに何らかのping要求を送信するようにクライアント(アプリ)を作ることができるので、バックエンドはそれをチェックして、n時間分のping要求を受信して​​いない場合 - クライアントはオフラインです。

+0

バックエンドにリクエストを送信するにはどうすればよいですか?そのリクエストのコードはどこに書くことができますか? –

+0

@RamaKrishnaあなたのサーバーに。このようなサーバー要求をn時間ごとに行うサービスを作成することができます。このようなサービスは、最初の "オンライン"リクエストを送信するたびに開始され、 "onBackpressed()"や "onDestroy()"メソッドで書いたように、 "オフライン" –

関連する問題