네트워크 연결 여부 확인
/**
* Check Network status
*/
public static boolean isNetworkAvailable(Context c) {
boolean bNetwork = false;
ConnectivityManager mConnMgr = (ConnectivityManager) c
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo[] nis = mConnMgr.getAllNetworkInfo();
if (nis != null) {
for (NetworkInfo ni : nis) {
if (ni != null) {
if (ni.isConnected() == true) {
bNetwork = true;
break;
}
}
}
}
return bNetwork;
}
네트워크 클릭 에 연결 되 지 않 은 후 와 이 파이 설정 인터페이스 로 바로 이동 하 는 방법:
private boolean CheckNetwork() {
boolean flag = false;
flag = UpdateUtils.isNetworkAvailable(mContext);
if (!flag) {
chNetworkDLG = new AlertDialog.Builder(this)
.setTitle(R.string.txt_no_net)
.setMessage(R.string.txt_no_net_msg)
.setPositiveButton(R.string.button_ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Intent mIntent = new Intent("/");
ComponentName comp = new ComponentName("com.android.settings",
"com.android.settings.Settings");
mIntent.setComponent(comp);
mIntent.setAction("android.intent.action.VIEW");
startActivity(mIntent);
}
})
.setNeutralButton(R.string.button_cancel,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
dialog.cancel();
}
}).show();
}
Log.d(TAG, "CheckNetwork() ===> :[" + flag + "]");
return flag;
}
두 번 째 방법:
android
android , , 。android BroadcastReceiver , :
BroadcastReceiver mNetworkStateReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.e(TAG, " ");
boolean success = false;
//
ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
// State state = connManager.getActiveNetworkInfo().getState();
State state = connManager.getNetworkInfo(
ConnectivityManager.TYPE_WIFI).getState(); //
if (State.CONNECTED == state) { // WIFI
success = true;
}
state = connManager.getNetworkInfo(
ConnectivityManager.TYPE_MOBILE).getState(); //
if (State.CONNECTED != state) { // GPRS
success = true;
}
if (!success) {
Toast.makeText(LocationMapActivity.this, " ", Toast.LENGTH_LONG).show();
}
}
Activity onCreate :
//
IntentFilter filter = new IntentFilter();
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(mNetworkStateReceiver, filter);
Activity onDestroy :'
unregisterReceiver(mNetworkStateReceiver); //
현재 인터넷 상태 로 돌아 가기:
public static String getNetwrokType(Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = connectivityManager.getActiveNetworkInfo();
if (info != null && info.isAvailable()) {
if (info.getTypeName().equalsIgnoreCase("wifi")) {
return "wifi";
} else if (info.getTypeName() != null
&& info.getTypeName().equalsIgnoreCase("mobile")
&& info.getExtraInfo() != null) {
if (info.getExtraInfo().equalsIgnoreCase("cmwap")) {
return "cmwap";
} else if (info.getExtraInfo().equalsIgnoreCase("cmnet")) {
return "cmnet";
}else if (info.getExtraInfo().equalsIgnoreCase("3gnet")) {
return "3gnet";
}
}
}
return "";
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.