我怎么能得到我的SIM卡在Android代码的国家代码.我用过
TelephonyManager tm = (TelephonyManager)getSystemService(getApplicationContext().TELEPHONY_SERVICE);
String countryCode = tm.getNetworkCountryIso();
但在这里我得到像孟加拉国的国家名称“BD”我需要孟加拉国+880。这个代码是一样的工作。Locale.getDefault().getCountry();
我需要像+91的ind代码,+880的BD。
4条答案
按热度按时间bjp0bcyl1#
TelephonyManager类中没有直接的方法可以返回国家的拨号代码。您必须为所有国家创建一个键值对列表。
vxf3dgd42#
实际上libphonenumber更方便,并且可以维护:
PhoneNumberUtil.createInstance(getContext())getCountryCodeForRegion(countryNameCode)
对于Android来说,与使用Google库相比,这一个似乎更轻量级:https://github.com/MichaelRocks/libphonenumber-android
kx7yvsdv3#
获取国家代码的最佳方法是使用此库。
从Github获取完整文档
此库可以通过添加此属性
app:ccp_autoDetectCountry="true"
自动检测国家代码代码示例:
从github https://github.com/hbb20/CountryCodePickerProject阅读完整的实现细节
erhoui1w4#
Kotlin
** java **