2017-08-14 10 views
1

私はWifiモデムに接続されたデバイスを検索するアプリを作っています。私はしばらくの間働いていますが、トピックにはいくつかの質問がありますが、質問。デバイスが静かになり、pingに応答しない - アンドロイド

私は、InetaddressのisReachableコマンドと/ system/bin/pingを使用してARPテーブルを使用してデバイスを検索しようとしていますが、これは "うまく"機能しますが、特定のデバイス(特にモバイルとタブ)私たちが上記の方法を使用して作成しようとするあらゆる種類の連絡に応答しないでください。この「沈黙」の期間は、私のプロジェクトに悪い1分ほどまで続く可能性があります。

私はJavaを使用してコードを作成しています。これについては他の方法はありません。どんな助けもありがたいです。

答えて

1

あなたの説明は、アンドロイドシステムの正常な動作です。

デバイスがロックモード(OSだけでなく)の場合、アンドロイドバージョンだけでなく、デバイスコンストラクタによる変更も考慮する必要があります。バッテリを節約するためにさまざまな操作を一時停止/ 。

ポーズ/スローダウンがどれほど積極的であるかは、デバイスによって異なり、OSバージョンからOSバージョンまでさまざまです。たとえば、Androidのバージョン6は、以前のバージョンからのバッテリの保存にもっと積極的です。

また、画面が消えたときにユーザーが設定を介してWi-Fiを閉じる可能性があることも考慮する必要があります。

これはアプリの前提条件なので、これを処理する必要があります。

+0

ねえ。しかし完璧な "Fing"のような特定のアプリがあります。常にすべてのデバイスを常に検索します。これは、これを行う方法があると私は信じている方法です。 –

+0

あなたが言及したアプリはルータだけで、単一のデバイスではないかもしれません。私のアプリ、例えば、ソケットを介してデバイス間の接続を確認し、その場合は、デバイスの応答性は一定ではありません。 Fingのようなアプリケーションを作成するためのコードはここにないが、コードをデバッグするのに役立つだけであることに注意してください。特定の回答が必要な場合は、問題を作成するコードを含める必要があります。 –

+0

個々のデバイスに接続しているいくつかの実験で結果を見つけることができました。私はルータにこれについて問い合わせる方法はないと思う。あなたは何を感じる ? –

関連する問題