我需要检测GSM/UMTS无线调制解调器当前所在的国家的MCC代码。
基于GSM网络
您需要使用TelephonyManager中的getSimCountryIso()
和getNetworkCountryIso()
返回SIM卡提供商国家代码的ISO国家代码等效项。
基于WIFI,您可以使用IP到国家数据库
您还可以根据位置使用Geocoder类
首先获取MCC/MNC:
TelephonyManager tel = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String networkOperator = tel.getNetworkOperator();
if (networkOperator != null) {
int mcc = Integer.parseInt(networkOperator.substring(0, 3));
int mnc = Integer.parseInt(networkOperator.substring(3));
}
然后,基于此,您可以获取与所选MCC对应的数字。互联网上有很多列表,例如维基百科上的这个列表