私はXmppに基づいてAndroidのチャットアプリケーションを開発しています。私はこの奇妙な状況で私のアプリがインターネットにアクセスすることができない場合でも、電話上の他のアプリがインターネットに接続することができます。このような状況は一定の時間が経過すると発生します。それ以外の場合、アプリはインターネットに接続します。だから私は、マニフェストファイルの権限が正しいと仮定します。Android:デバイスが接続されていてもアプリケーションがネットワークにアクセスできない(java.net.UnknownHostException)
これは、この状況を再現するために使用する手順です。
- スタートアプリ - アプリは完全にインターネットに接続します。
- 数分間使用しないと、アプリが切断されます。明らかにXmpp TCP接続がタイムアウトします。
- GCM(Firebase)メッセージを送信して、アプリケーションをスリープ状態にし、インターネットに接続しようとします。 GCM通知はうまく表示されます。
しかし、アプリケーションは、インターネットに接続できないと私は次のエラー
The following addresses failed: 'dev.xxx.com:5222' failed because java.net.UnknownHostException: Unable to resolve host "dev.xxx.com": No address associated with hostname
この段階で2つの観測得る:
- ながら、私の他のアプリは、インターネットに接続することができますがアプリは文句を言って続ける
UnknownHostException
- icoをクリックして手動でアプリを再起動するnは、アプリがインターネットに再接続できるようにします。
これはなぜ起こっているのですか?私はアプリをテストするためにXiaomiの電話を使用しています。