2010-04-20 22 views
16

Android, ağ durumu değiştiğinde, yani GSM’ten Wifi’ya bir niyet yayınlıyor mu? Ve eğer öyleyse izin istiyorum ve niyet eylemi ne denir? , aygıtlar WiFi bağlantılarını kazandığında veya kaybederken Android WifiManager.NETWORK_STATE_CHANGED_ACTION yayınlayacaktır.Yayın Ağ durumu değiştiğinde niyeti

cevap

19

Güncelleme: yerine bu kullanın: https://stackoverflow.com/a/2677519/241869

+1

Konuya aşina değilim, ancak Defcon'daki bir konuşma bu cevapta bir hataya işaret etti. [Sunum] 'dan 51 numaralı slayta bakın (http://www.eecs.berkeley.edu/~emc/slides/SevenWaysToHangYourselfWithGoogleAndroid.pdf). Birisi bunu buna göre güncelleyebilir mi? – jakar

+0

Sabit. Bana bildirdiğiniz için teşekkürler. – velazcod

+0

Bu cevabın soruyla nasıl bağlantılı olduğunu göremiyorum. Ağ bağlantısı cep telefonu şebekesinden Bluetooth tethering'e geçebilir ve kod bunu asla bilemez. ** Lütfen bunu kullanmayın. ** ** AI'nin ** Bağlantısı ** ConnectivityManager.CONNECTIVITY_ACTION ** doğru yönde işaret ediyor. –

1

Niyeti almak için android.permission.ACCESS_WIFI_STATE iznine ihtiyacınız olacak. Ancak, 'un GSM -> WIFI için benzer bir şey olup olmadığından emin değilim.

+0

Soruda, WiFi sadece bir örnek olarak belirtilmiştir. Soru, belirli bir WiFi bağlantısından bağımsız olarak genel olarak ağ durumuna atıfta bulunmaktadır. –

10

şey yok tam olarak tarif ettiğiniz Ancak, değişiklik izlemek için ConnectivityManager.CONNECTIVITY_ACTION kullanmak ve onunla birlikte gelen ekstra kullanabilirsiniz neyi gibi bağlantı olup olmadığını görmek için GSM’ten Wifi’ya değişti ve tam tersi. Bunun için wifi bilgilerini kontrol etmek için android.permission.ACCESS_NETWORK_STATE ve android.permission.ACCESS_WIFI_STATE iznine ihtiyacınız vardır.

+0

CONNECTIVITY_ACTION neden sorulmamış olduğunu anlamıyorum. Ayrıca, kişisel olarak, CONNECTIVITY_ACTION olayını almak için android.permission.ACCESS_WIFI_STATE adresine ihtiyacım yok. Bunun dışında ... soruya doğru cevabı sağladığınız için teşekkür ederiz! –

İlgili konular