![]() |
![]() |
در روند بسیاری از برنامه ها لازم می شود تا دسترسی و نحوه اتصال ( WIFI – DATA) به اینترنت را بررسی کنیم، در این آموزش قصد داریم تا به این موضوع بپردازیم.
عکس های زیر نشان میدهند که برنامه چگونه کار خواهد کرد.
زمانی که به اینترنت متصل نیستیم
زمانی که از طریق وای فای متصل هستیم.
زمانی که از طریق دیتا به اینترنت متصل هستیم
از Manifest دسترسی Access_network_state را به برنامه میدهیم.
در ابتدا از ConnectivityManager (که پاسخگوی وضعیت اتصال ما به شبکه و اینترنت می باشد) نمونه میسازیم .
1 2 3 4 |
ConnectivityManager connectivityManager = (ConnectivityManager) GetSystemService(ConnectivityService); |
برای بررسی دسترسی به اینترنت از خصوصیت ActiveNetworkInfo در connectivityManager استفاده میکنیم
1 2 3 4 |
NetworkInfo activeConnection = connectivityManager.ActiveNetworkInfo; bool isOnline = (activeConnection != null) && activeConnection.IsConnected; |
برای نشان دادن نحوه اتصال به اینترنت از کد زیر استفاده میکنیم.
1 2 3 4 |
NetworkInfo.State activeState = activeConnection.GetState(); _connectionType.Text = activeConnection.TypeName; |
برای تغییر آیکون ها در نحوه های مختلف دسترسی به اینترنت نیز از کد زیر استفاده می کنیم.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
NetworkInfo wifiInfo = connectivityManager.GetNetworkInfo(ConnectivityType.Wifi); if(wifiInfo.IsConnected) { Log.Debug(TAG, "Wifi connected."); _wifiImage.SetImageResource(Resource.Drawable.green_square); } else { Log.Debug(TAG, "Wifi disconnected."); _wifiImage.SetImageResource(Resource.Drawable.red_square); } |