만약 우리가 이미 일부 와이파이 또는 와이파이 직접 또는 핫스팟에 연결되어 있으면 안드로이드에 어떤 방법이 있는지 알아낼 수 있습니다.당신이 와이파이 핫스팟/와이파이/와이파이 직접 연결
예인 경우 어떻게 연락하나요? 나는 모든 3 (와이파이/핫스팟/와이파이 직접)을 찾아야하고 대답을 기반으로 내 응용 프로그램에서 뭔가를해야합니다.
만약 우리가 이미 일부 와이파이 또는 와이파이 직접 또는 핫스팟에 연결되어 있으면 안드로이드에 어떤 방법이 있는지 알아낼 수 있습니다.당신이 와이파이 핫스팟/와이파이/와이파이 직접 연결
예인 경우 어떻게 연락하나요? 나는 모든 3 (와이파이/핫스팟/와이파이 직접)을 찾아야하고 대답을 기반으로 내 응용 프로그램에서 뭔가를해야합니다.
다음은 코드 스냅 희망입니다.
public static int getNetworkType(Context context) {
ConnectivityManager connectivity = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null) {
// 获取网络连接管理的对象
NetworkInfo info = connectivity.getActiveNetworkInfo();
if (info != null && info.isConnected()) {
// 判断当前网络是否已经连接
if (info.getState() == NetworkInfo.State.CONNECTED) {
if (info.getTypeName().equalsIgnoreCase("WIFI")) {
return MrDefines.NETTYPE_WIFI;
} else {
Cursor mCursor = context.getContentResolver().query(
Uri.parse("content://telephony/carriers"),
new String[] {"name"}, "current=1",
null, null);
if(mCursor != null && mCursor.moveToFirst()){
String name = mCursor.getString(0);
mCursor.close();
if(name.equalsIgnoreCase("cmnet"))
return MrDefines.NETTYPE_CMNET;
else if(name.equalsIgnoreCase("cmwap"))
return MrDefines.NETTYPE_CMWAP;
}else if (mCursor != null) {
mCursor.close();
}
}
}
}
}
return MrDefines.NETTYPE_UNKNOW;
}
저는 WifiManager와 ConnectivityManager가 필요한 것일 수 있다고 생각합니다. 참조
http://developer.android.com/reference/android/net/wifi/WifiManager.html
http://developer.android.com/reference/android/net/ConnectivityManager.html
MrDefines을 무엇입니까 봐? – learner
상관 없어요. 연결 유형의 정의는 – yichouangle
입니다. 고맙습니다. :) – learner