내 앱은 무료 공중 와이파이 네트워크가있는 작업장/공항에서 작업해야합니다.사용자가 공중 와이파이에 연결되었을 때를 감지하는 방법 승인되지 않은 와이파이 사용시
웹 브라우저를 통해 무선 인터넷 사용 기간을 승인해야하는지 사용자에게 알려 드리고자합니다.
나는 정보를 추출하려고하지만 이전과 웹 브라우저를 클릭 한 후 확인하면public static void haveNetworkConnection(Context mContext) {
ConnectivityManager cm = (ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
if (activeNetwork != null) { // connected to the internet
if (activeNetwork.getType() == ConnectivityManager.TYPE_WIFI) {
// connected to wifi
Toast.makeText(mContext, activeNetwork.getTypeName(), Toast.LENGTH_SHORT).show();
printWifiInformation(activeNetwork);
} else if (activeNetwork.getType() == ConnectivityManager.TYPE_MOBILE) {
// connected to the mobile provider's data plan
Toast.makeText(mContext, activeNetwork.getTypeName(), Toast.LENGTH_SHORT).show();
}
} else {
Toast.makeText(mContext, "Not connected", Toast.LENGTH_SHORT).show();
}
}
public static void printWifiInformation(NetworkInfo activeNetwork){
System.out.println("************************************************************************************");
System.out.println("1 . describeContents " + activeNetwork.describeContents());
System.out.println("2 . getDetailedState " + activeNetwork.getDetailedState());
System.out.println("3 . getExtraInfo " + activeNetwork.getExtraInfo());
System.out.println("4 . getReason " + activeNetwork.getReason());
System.out.println("5 . getState " + activeNetwork.getState());
System.out.println("6 . getSubtype " + activeNetwork.getSubtype());
System.out.println("7 . getSubtypeName " + activeNetwork.getSubtypeName());
System.out.println("8 . getSubtypeName " + activeNetwork.getSubtypeName());
System.out.println("9 . getType " + activeNetwork.getType());
System.out.println("10. getTypeName " + activeNetwork.getTypeName());
System.out.println("11. isAvailable " + activeNetwork.isAvailable());
System.out.println("12. isConnected " + activeNetwork.isConnected());
System.out.println("13. isConnectedOrConnecting " + activeNetwork.isConnectedOrConnecting());
System.out.println("14. isFailover " + activeNetwork.isFailover());
System.out.println("15. isRoaming " + activeNetwork.isRoaming());
System.out.println("************************************************************************************");
}
내가 같은 결과를 얻었다이 경우를 분리하기 위해 모든 속성/정보를 찾지 못했습니다. , 감사를 알려주십시오, 루터
이 서버에 "핑 (ping)"을 시도해 볼 수 있으며 현재 연결되어 있으면 작동하지 않습니다. –