問題タブ [android-wifi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Wifi 接続切断リスナー
wifiが接続/切断された場合にコードを自動的にチェックするために、クラスはどのリスナーを実装する必要がありますか?
Wi-Fiの接続/切断を手動で確認できますが、毎回Android設定からWIFIを接続/切断し、プログラムを実行して結果を確認する必要があります。
私の現在のコードは次のように単純です。
android - Android wifi.getScanResults() からの古い結果
私の Droid 2 では、wifi.getScanResults() が短時間古い値を返すようです。
これは、私が家にいる間、wifi.getScanResults() が私のホーム ネットワークを表示することを意味します。数マイル離れた通りをドライブしても、wifi.getScanResults() は最初の 1 ~ 2 回の試行でホーム ネットワークを表示します。3回目の試行で、ホームネットワークがなくなりました。
質問: 最新の wifi.getScanResults() のみを取得する方法はありますか?
可能なオプション:
- ScanResult の .level が最小の場合は、範囲外であると想定します。
- 文書化されていない API を使用して、何らかの方法で ScanResults をクリアし
ます。
次のようなコードがあります。
...
android - Android はプログラムで WiFi ホットスポットをオン/オフします
プログラムで Android の WiFi ホットスポットをオン/オフする API はありますか?
オン/オフするには、どのメソッドを呼び出す必要がありますか?
更新: HotSpot を有効にして WiFi のオン/オフを切り替えるオプションがありますが、これは私にとっては良い解決策ではありません。
android - アンドロイドのIPCU
Androidのツールのような電話構成ユーティリティを探しています。プロファイルの構成用。wificonfigurationクラスを使用してコードでwifiを構成できることを知っています。インテント レシーバーを作成して、デバイスの起動後に Wi-Fi を構成するだけでなく、
しかし、私は iphone の IPCU のような wifi 設定コードで wifi を設定することを探しています。セットアップが完了したら、wificonfiguration クラスを使用して構成コードを記述する必要はありません。
java - Android WifiManager のスキャン結果は、ジンジャーブレッドの後に一貫性のないデータを提供しますか?
利用可能なwifiアクセスポイントの信号強度を継続的にスキャンするAndroidアプリケーションがあります。私はまさにそれを行うために WifiManager を使用しています。
これは、電話をジンジャーブレッドにアップグレードした 1 週間前まで正常に機能していました。現在、すべてのアクセスポイントがスキャンされる前に「SCAN_RESULTS_AVAILABLE_ACTION」がトリガーされているようです。次のスキャンで表示されるいくつかの欠落が常にあり、他のものは再び欠落しています。
これは新しい Android バージョンの何らかのバグですか、それとも毎回いくつかの異なるアクセスポイントではなく、範囲内のすべてのアクセスポイントを取得する方法はありますか?
ところで、これは samsung galaxy s1&s2 と acer android タブレットで発生するため、デバイスだけではありません。
あなたが私たちに与えることができるどんな助けにもthx
android - ホットスポット/テザリング モードでの Android のマルチキャスト サポート
マルチキャスト パケットをリッスンして通信するクライアントを「検出」するプロトタイプの Android アプリがあります。ソケットのセットアップは次のようになります。
これは、すべてのデバイスが WiFi 経由で接続されている場合に非常にうまく機能します。ポータブル ホットスポットとして機能する電話でこれをサポートしたいと思います。ただし、すべてのデバイスがホットスポットに正しく接続しているように見えますが、マルチキャスト データを受信しなくなりました。ホットスポット モードでこのタイプの通信を禁止する制限があるかどうか、またはこれを有効にするために必要な追加のネットワーク構成があるかどうか疑問に思っています。Gingerbread と Froyo を実行しているいくつかの異なるデバイスでこれを試しましたが、うまくいきませんでした。
android - AndroidでwifiホットスポットからIPを取得
Androidの IP ローカルではなく、Android デバイスが wifi 経由で接続する (別のコンピューターから) wifi ホットスポットの IP を取得したい。実際のデバイスでアプリケーションを実行します。すべてのwifiをスキャンして、それらの名前を取得できます。
もちろん、次のコードを使用して IP ローカルを取得できます。
たとえば、Android デバイスの IP ローカルは 192.168.2.101 ですが、wifi ホットスポットの IP をコードで取得する方法は 192.168.2.1 です。ありがとう!
android - WiFiアクセスポイントへの接続時にWIFI_STATE_CHANGED_ACTIONインテントが受信されませんか?
私のアプリの機能の一部は、WiFiアクセスポイントのリストをスキャンして表示し、ユーザーが選択したものに接続することです。この機能を使用しています。さて、接続が「通過」したときにも通知を受け取りたいと思います。これはかなり単純なはずですが、私はつまずきます。
WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION
私はここSOでさまざまな投稿を読みましたが、それらはすべてまたはに登録することについて言及していますWifiManager.WIFI_STATE_CHANGED_ACTION
。しかし、これらはどちらも私にはうまくいきません。誰かがこのコードの間違いを見つけることができますか?(スキャンなどを行う部分は省略しています)
予想される動作:接続が成功するとすぐに(つまり、通知バーに「接続済み」アイコンが表示されたら)、ブロードキャストが受信され、トーストが表示されます。
観察された動作:ブロードキャストは、アプリが最初に起動したとき、およびアプリに戻ったとき(つまり、onResume()
呼び出されたとき、またはインテントに登録したときはいつでも)に
WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTIONのコードのコメントを外すと、ブロードキャストがまったく受信されていないことがわかります。
注:Androidのwifi設定画面にステータスが表示されるため、接続が成功したことはわかっています。
java - Android非同期静的クラス?
これは一種のいくつかの質問です。基本的に、3 つのタブを持つタブ付きアプリケーションがあります。各タブは、Web サービスと wifi API にアクセスする必要があります。3 つのアクティビティすべてが同じ静的クラスを使用できるように、このすべての共有機能に対して 2 つの静的ラッパー クラスを作成することで、これを簡素化したいと考えています。
私はAndroid/Javaでかなり慣れていないので、ここでいくつかのポインタを探しています.
例として、これが私の Wifi クラスです。リスナーを登録し、スキャン結果を受信するたびに投稿します。それらに注意を払いたいかどうかを決定するのは加入者次第です。
これは有効ですか?それとも、Android アプリケーションのライフサイクルを知らないのでしょうか? 私のやり方に落とし穴はありますか?
また、WifiManagerActivity が別のスレッドにある場合、別のスレッドで変数を操作する必要があるメソッドの呼び出しをどのように処理するのでしょうか? C# では、ディスパッチャーを使用して呼び出しますが、java/android?? を使用します。
要約すれば:
1) 現在のプランに何か問題や提案はありますか?
2) あるスレッドからメソッドを呼び出して、別のスレッドに属する変数を変更するにはどうすればよいですか?
ありがとう!
android - Android での WiFi 消費電力の明示的な管理
バックグラウンド
Android フォンで実行される研究アプリケーションを開発しています。要するに、アプリケーションは電話がオンになっている限り実行され、電話の多くのコンポーネントとセンサーから定期的に情報を取得します。アプリケーションは、ユーザーの邪魔をできるだけ少なくすることです。そうは言っても、バッテリーの消耗が速すぎるため、ユーザーは毎日充電する必要があります. これではうまくいきません。
この状況を改善する方法を探るために、同じアプリケーションで作業している同僚が、アプリケーションを長時間実行させたところ、最大のバッテリー消費は WiFi であることに気付きました。私の現在のアイデアは、電力を節約するために、使用していないときに WiFi を手動でオフにすることです。私の知る限り、AndroidはWiFiにPSMを使用してこれを達成していますが、それだけでは十分ではないようです.
問題
Android の PSM を「強化」する方法はありますか? または、この質問が示唆するようなものがない場合、ユーザーに悪影響を与えることなく WiFi を安全にオン/オフできる方法はありますか? つまり、どのアプリケーションが WiFi を使用しているかを確認し、使用していないときにオフにする方法はありますか? Web ブラウザや電子メール クライアントなどの標準アプリケーションは、動作中に WiFi がオフにならないようにWiFi ロックを使用していますか?
この問題を解決するためにどこから始めるべきかについてのアドバイスは大歓迎です。Android の PSM がどのように機能するか、有効になるまでにかかる時間、または問題に関連する情報は大歓迎です。
御時間ありがとうございます!