本文介绍了如何在Android中使用libphonenumber API的手机号码获得国家code的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用libphonenumber API ,我使用获得国家code以下code
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
尝试{
******中国numberProto = phoneUtil.parse(数字,IN);
INT国家code = numberProto.getCountry code();
}赶上(NumberParseException E){
通信System.err.println(NumberParseException被抛出:+ e.toString());
}
我的问题是: -
- 我有一些像4478.7亿,但不知道国家code,但想从这个数字就像+44获得国家code我怎样才能得到它通过这个API
请帮我
在此先感谢
解决方案
@覆盖
保护无效的onCreate(捆绑savedInstanceState)
{
super.onCreate(savedInstanceState);
的setContentView(R.layout.service_activity); / ***********读指示卡************* /
TelephonyManager telMgr =(TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE); 串simContryiso = telMgr.getSimCountryIso();
字符串指示= Iso2Phone.getPhone(simContryiso);
}//创建一个包含指示所有国家和ISO code类
公共类Iso2Phone
{ //获取指示
公共静态字符串getPhone(字符串code)
{
返回country_to_indicative.get(code.toUpperCase());
} 私有静态地图<字符串,字符串> country_to_indicative =新的HashMap<字符串,字符串>();
静止
{
country_to_indicative.put(AF,+93);
country_to_indicative.put(AL,+355);
country_to_indicative.put(DZ,+213);
country_to_indicative.put(AS,1684);
country_to_indicative.put(AD,+376);
country_to_indicative.put(AO,+244);
country_to_indicative.put(Al,1264);
country_to_indicative.put(AG,1268);
country_to_indicative.put(AR,+54);
country_to_indicative.put(AM,+374);
country_to_indicative.put(AU,+61);
country_to_indicative.put(AW,+297);
country_to_indicative.put(AT,+43);
country_to_indicative.put(AZ,994);
country_to_indicative.put(BS,1242);
country_to_indicative.put(BH,+973);
country_to_indicative.put(BD,+880);
country_to_indicative.put(BB,1246);
country_to_indicative.put(本经,+375);
country_to_indicative.put(BE,+32);
country_to_indicative.put(BZ,+501);
country_to_indicative.put(BJ,+229);
country_to_indicative.put(BM,1441);
country_to_indicative.put(BT,975);
country_to_indicative.put(BO,+591);
country_to_indicative.put(BA,+387);
country_to_indicative.put(BW,+267);
country_to_indicative.put(BR,+55);
country_to_indicative.put(BN,673);
country_to_indicative.put(BG,+359);
country_to_indicative.put(BF,+226);
country_to_indicative.put(BI,+257);
country_to_indicative.put(KH,+855);
country_to_indicative.put(CM,+237);
country_to_indicative.put(CA,+ 1);
country_to_indicative.put(CV,238);
country_to_indicative.put(CF,236);
country_to_indicative.put(TD,+235);
country_to_indicative.put(瘦肉精,+56);
country_to_indicative.put(CN,+86);
country_to_indicative.put(CO,+57);
country_to_indicative.put(KM,+269);
country_to_indicative.put(CD,+243);
country_to_indicative.put(CG,+242);
country_to_indicative.put(CR,+506);
country_to_indicative.put(CI,+225);
country_to_indicative.put(HR,+385);
country_to_indicative.put(CU,+53);
country_to_indicative.put(CY,+357);
country_to_indicative.put(CZ,+420);
country_to_indicative.put(DK,+45);
country_to_indicative.put(DJ,+253);
country_to_indicative.put(DM,1767);
country_to_indicative.put(DO,1829);
country_to_indicative.put(EC,+593);
country_to_indicative.put(EG,+20);
country_to_indicative.put(SV,+503);
country_to_indicative.put(GQ,+240);
country_to_indicative.put(ER,+291);
country_to_indicative.put(EE,+372);
country_to_indicative.put(ET,+251);
country_to_indicative.put(FJ,+679);
country_to_indicative.put(FI,+358);
country_to_indicative.put(FR,+33);
country_to_indicative.put(GA,+241);
country_to_indicative.put(GM,+220);
country_to_indicative.put(GE,+995);
country_to_indicative.put(DE,+49);
country_to_indicative.put(GH,+233);
country_to_indicative.put(GR,+30);
country_to_indicative.put(GD,1473);
country_to_indicative.put(GT,+502);
country_to_indicative.put(GN,+224);
country_to_indicative.put(GW,+245);
country_to_indicative.put(GY,+592);
country_to_indicative.put(HT,509);
country_to_indicative.put(HN,+504);
country_to_indicative.put(胡,+36);
country_to_indicative.put(IS,+354);
country_to_indicative.put(IN,+91);
country_to_indicative.put(ID,+62);
country_to_indicative.put(IR,+98);
country_to_indicative.put(智商,+964);
country_to_indicative.put(IE,+353);
country_to_indicative.put(IL,+972);
country_to_indicative.put(IT,+39);
country_to_indicative.put(JM,1876);
country_to_indicative.put(JP,+81);
country_to_indicative.put(JO,+962);
country_to_indicative.put(KZ,+ 7);
country_to_indicative.put(KE,+254);
country_to_indicative.put(KI,686);
country_to_indicative.put(KP,850);
country_to_indicative.put(KR,+82);
country_to_indicative.put(KW,+965);
country_to_indicative.put(KG,+996);
country_to_indicative.put(LA,856);
country_to_indicative.put(LV,+371);
country_to_indicative.put(LB,+961);
country_to_indicative.put(LS,+266);
country_to_indicative.put(LR,+231);
country_to_indicative.put(LY,+218);
country_to_indicative.put(LI,+423);
country_to_indicative.put(LT,+370);
country_to_indicative.put(吕氏春秋,+352);
country_to_indicative.put(MK,389);
country_to_indicative.put(MG,+261);
country_to_indicative.put(MW,+265);
country_to_indicative.put(MY,+60);
country_to_indicative.put(MV,+960);
country_to_indicative.put(ML,+223);
country_to_indicative.put(MT,+356);
country_to_indicative.put(MH,692);
country_to_indicative.put(MR,+222);
country_to_indicative.put(MU,+230);
country_to_indicative.put(MX,+52);
country_to_indicative.put(FM,691);
country_to_indicative.put(MD,+373);
country_to_indicative.put(MC,+377);
country_to_indicative.put(MN,976);
country_to_indicative.put(ME,382);
country_to_indicative.put(MA,+212);
country_to_indicative.put(MZ,258);
country_to_indicative.put(MM,+95);
country_to_indicative.put(NA,+264);
country_to_indicative.put(NR,674);
country_to_indicative.put(NP,+977);
country_to_indicative.put(NL,+31);
country_to_indicative.put(NZ,+64);
country_to_indicative.put(NI,+505);
country_to_indicative.put(NE,+227);
country_to_indicative.put(NG,+234);
country_to_indicative.put(否,+47);
country_to_indicative.put(OM,+968);
country_to_indicative.put(PK,+92);
country_to_indicative.put(私服,680);
country_to_indicative.put(PA,+507);
country_to_indicative.put(PG,+675);
country_to_indicative.put(PY,+595);
country_to_indicative.put(PE,+51);
country_to_indicative.put(PH,+63);
country_to_indicative.put(PL,+48);
country_to_indicative.put(PT,+351);
country_to_indicative.put(QA,+974);
country_to_indicative.put(RO,+ 40);
country_to_indicative.put(RU,+7);
country_to_indicative.put(RW,+250);
country_to_indicative.put(KN,1869);
country_to_indicative.put(LC,1758);
country_to_indicative.put(VC,1784);
country_to_indicative.put(WS,+685);
country_to_indicative.put(SM,378);
country_to_indicative.put(ST,239);
country_to_indicative.put(SA,+966);
country_to_indicative.put(SN,+221);
country_to_indicative.put(RS,+381);
country_to_indicative.put(SC,+248);
country_to_indicative.put(SL,232);
country_to_indicative.put(SG,+65);
country_to_indicative.put(SK,+421);
country_to_indicative.put(SI,+386);
country_to_indicative.put(SB,+677);
country_to_indicative.put(SO,+252);
country_to_indicative.put(ZA,+27);
country_to_indicative.put(ES,+34);
country_to_indicative.put(LK,+94);
country_to_indicative.put(SD,+249);
country_to_indicative.put(SR,+597);
country_to_indicative.put(SZ,+268);
country_to_indicative.put(SE,+46);
country_to_indicative.put(CH,+41);
country_to_indicative.put(SY,+963);
country_to_indicative.put(TJ,992);
country_to_indicative.put(TZ,+255);
country_to_indicative.put(TH,+66);
country_to_indicative.put(TL,670);
country_to_indicative.put(TG,+228);
country_to_indicative.put(TO,+676);
country_to_indicative.put(TT,1868);
country_to_indicative.put(TN,+216);
country_to_indicative.put(TR,+90);
country_to_indicative.put(以旧换新,+993);
country_to_indicative.put(TV,688);
country_to_indicative.put(UG,256);
country_to_indicative.put(UA,+380);
country_to_indicative.put(AE,+971);
country_to_indicative.put(GB,+44);
country_to_indicative.put(US,+ 1);
country_to_indicative.put(UY,+598);
country_to_indicative.put(UZ,+998);
country_to_indicative.put(VU,+678);
country_to_indicative.put(VA,+39);
country_to_indicative.put(VE,+58);
country_to_indicative.put(VN,+84);
country_to_indicative.put(叶,967);
country_to_indicative.put(ZM,+ 260);
country_to_indicative.put(ZW,+263);
country_to_indicative.put(GE,+995);
country_to_indicative.put(TW,+886);
country_to_indicative.put(AZ,994);
country_to_indicative.put(MD,+373);
country_to_indicative.put(SO,+252);
country_to_indicative.put(GE,+995);
country_to_indicative.put(AU,+61);
country_to_indicative.put(CX,+61);
country_to_indicative.put(CC,+61);
country_to_indicative.put(NF,+672);
country_to_indicative.put(NC,+687);
country_to_indicative.put(PF,+689);
country_to_indicative.put(YT,262);
country_to_indicative.put(GP,+590);
country_to_indicative.put(GP,+590);
country_to_indicative.put(PM,+508);
country_to_indicative.put(WF,681);
country_to_indicative.put(PF,+689);
country_to_indicative.put(CK,+682);
country_to_indicative.put(NU,+683);
country_to_indicative.put(TK,690);
country_to_indicative.put(GG,+44);
country_to_indicative.put(IM,+44);
country_to_indicative.put(日本脑炎,+44);
country_to_indicative.put(Al,1264);
country_to_indicative.put(BM,1441);
country_to_indicative.put(IO,246);
country_to_indicative.put(VG,1284);
country_to_indicative.put(KY,1345);
country_to_indicative.put(FK,+500);
country_to_indicative.put(GI,+350);
country_to_indicative.put(MS,1664);
country_to_indicative.put(PN,870);
country_to_indicative.put(SH,+290);
country_to_indicative.put(TC,1649);
country_to_indicative.put(MP,1670);
country_to_indicative.put(PR,+ 1);
country_to_indicative.put(AS,1684);
country_to_indicative.put(GU,1671);
country_to_indicative.put(VI,1340);
country_to_indicative.put(香港,+852);
country_to_indicative.put(MO,+853);
country_to_indicative.put(FO,+298);
country_to_indicative.put(GL,+299);
country_to_indicative.put(GF,+594);
country_to_indicative.put(GP,+590);
country_to_indicative.put(MQ,596);
country_to_indicative.put(RE,262);
country_to_indicative.put(AX,35818);
country_to_indicative.put(AW,+297);
country_to_indicative.put(AN,+599);
country_to_indicative.put(SJ,+47);
country_to_indicative.put(AC,247);
country_to_indicative.put(TA,+290);
country_to_indicative.put(AQ,6721);
country_to_indicative.put(CS,+381);
country_to_indicative.put(PS,970);
country_to_indicative.put(EH,+212);
}
}
I am using libphonenumber api https://code.google.com/p/libphonenumber/ in android project, I am getting country code using following code
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
try {
PhoneNumber numberProto = phoneUtil.parse(number, "IN");
int countryCode = numberProto.getCountryCode();
} catch (NumberParseException e) {
System.err.println("NumberParseException was thrown: " + e.toString());
}
My question is:- -- I have number like +447870000000 but don't know about country code but want to get country code from this number like +44 how can I get it through this api ?
please help meThanks in advance
解决方案
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.service_activity);
/*********** read indicative sim *************/
TelephonyManager telMgr = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
String simContryiso = telMgr.getSimCountryIso();
String indicative = Iso2Phone.getPhone(simContryiso);
}
//create a class which contains the indicative of all the country and the ISO code
public class Iso2Phone
{
// Get the indicative
public static String getPhone(String code)
{
return country_to_indicative.get(code.toUpperCase());
}
private static Map<String, String> country_to_indicative = new HashMap<String, String>();
static
{
country_to_indicative.put("AF", "+93");
country_to_indicative.put("AL", "+355");
country_to_indicative.put("DZ", "+213");
country_to_indicative.put("AS", "+1684");
country_to_indicative.put("AD", "+376");
country_to_indicative.put("AO", "+244");
country_to_indicative.put("AI", "+1264");
country_to_indicative.put("AG", "+1268");
country_to_indicative.put("AR", "+54");
country_to_indicative.put("AM", "+374");
country_to_indicative.put("AU", "+61");
country_to_indicative.put("AW", "+297");
country_to_indicative.put("AT", "+43");
country_to_indicative.put("AZ", "+994");
country_to_indicative.put("BS", "+1242");
country_to_indicative.put("BH", "+973");
country_to_indicative.put("BD", "+880");
country_to_indicative.put("BB", "+1246");
country_to_indicative.put("BY", "+375");
country_to_indicative.put("BE", "+32");
country_to_indicative.put("BZ", "+501");
country_to_indicative.put("BJ", "+229");
country_to_indicative.put("BM", "+1441");
country_to_indicative.put("BT", "+975");
country_to_indicative.put("BO", "+591");
country_to_indicative.put("BA", "+387");
country_to_indicative.put("BW", "+267");
country_to_indicative.put("BR", "+55");
country_to_indicative.put("BN", "+673");
country_to_indicative.put("BG", "+359");
country_to_indicative.put("BF", "+226");
country_to_indicative.put("BI", "+257");
country_to_indicative.put("KH", "+855");
country_to_indicative.put("CM", "+237");
country_to_indicative.put("CA", "+1");
country_to_indicative.put("CV", "+238");
country_to_indicative.put("CF", "+236");
country_to_indicative.put("TD", "+235");
country_to_indicative.put("CL", "+56");
country_to_indicative.put("CN", "+86");
country_to_indicative.put("CO", "+57");
country_to_indicative.put("KM", "+269");
country_to_indicative.put("CD", "+243");
country_to_indicative.put("CG", "+242");
country_to_indicative.put("CR", "+506");
country_to_indicative.put("CI", "+225");
country_to_indicative.put("HR", "+385");
country_to_indicative.put("CU", "+53");
country_to_indicative.put("CY", "+357");
country_to_indicative.put("CZ", "+420");
country_to_indicative.put("DK", "+45");
country_to_indicative.put("DJ", "+253");
country_to_indicative.put("DM", "+1767");
country_to_indicative.put("DO", "+1829");
country_to_indicative.put("EC", "+593");
country_to_indicative.put("EG", "+20");
country_to_indicative.put("SV", "+503");
country_to_indicative.put("GQ", "+240");
country_to_indicative.put("ER", "+291");
country_to_indicative.put("EE", "+372");
country_to_indicative.put("ET", "+251");
country_to_indicative.put("FJ", "+679");
country_to_indicative.put("FI", "+358");
country_to_indicative.put("FR", "+33");
country_to_indicative.put("GA", "+241");
country_to_indicative.put("GM", "+220");
country_to_indicative.put("GE", "+995");
country_to_indicative.put("DE", "+49");
country_to_indicative.put("GH", "+233");
country_to_indicative.put("GR", "+30");
country_to_indicative.put("GD", "+1473");
country_to_indicative.put("GT", "+502");
country_to_indicative.put("GN", "+224");
country_to_indicative.put("GW", "+245");
country_to_indicative.put("GY", "+592");
country_to_indicative.put("HT", "+509");
country_to_indicative.put("HN", "+504");
country_to_indicative.put("HU", "+36");
country_to_indicative.put("IS", "+354");
country_to_indicative.put("IN", "+91");
country_to_indicative.put("ID", "+62");
country_to_indicative.put("IR", "+98");
country_to_indicative.put("IQ", "+964");
country_to_indicative.put("IE", "+353");
country_to_indicative.put("IL", "+972");
country_to_indicative.put("IT", "+39");
country_to_indicative.put("JM", "+1876");
country_to_indicative.put("JP", "+81");
country_to_indicative.put("JO", "+962");
country_to_indicative.put("KZ", "+7");
country_to_indicative.put("KE", "+254");
country_to_indicative.put("KI", "+686");
country_to_indicative.put("KP", "+850");
country_to_indicative.put("KR", "+82");
country_to_indicative.put("KW", "+965");
country_to_indicative.put("KG", "+996");
country_to_indicative.put("LA", "+856");
country_to_indicative.put("LV", "+371");
country_to_indicative.put("LB", "+961");
country_to_indicative.put("LS", "+266");
country_to_indicative.put("LR", "+231");
country_to_indicative.put("LY", "+218");
country_to_indicative.put("LI", "+423");
country_to_indicative.put("LT", "+370");
country_to_indicative.put("LU", "+352");
country_to_indicative.put("MK", "+389");
country_to_indicative.put("MG", "+261");
country_to_indicative.put("MW", "+265");
country_to_indicative.put("MY", "+60");
country_to_indicative.put("MV", "+960");
country_to_indicative.put("ML", "+223");
country_to_indicative.put("MT", "+356");
country_to_indicative.put("MH", "+692");
country_to_indicative.put("MR", "+222");
country_to_indicative.put("MU", "+230");
country_to_indicative.put("MX", "+52");
country_to_indicative.put("FM", "+691");
country_to_indicative.put("MD", "+373");
country_to_indicative.put("MC", "+377");
country_to_indicative.put("MN", "+976");
country_to_indicative.put("ME", "+382");
country_to_indicative.put("MA", "+212");
country_to_indicative.put("MZ", "+258");
country_to_indicative.put("MM", "+95");
country_to_indicative.put("NA", "+264");
country_to_indicative.put("NR", "+674");
country_to_indicative.put("NP", "+977");
country_to_indicative.put("NL", "+31");
country_to_indicative.put("NZ", "+64");
country_to_indicative.put("NI", "+505");
country_to_indicative.put("NE", "+227");
country_to_indicative.put("NG", "+234");
country_to_indicative.put("NO", "+47");
country_to_indicative.put("OM", "+968");
country_to_indicative.put("PK", "+92");
country_to_indicative.put("PW", "+680");
country_to_indicative.put("PA", "+507");
country_to_indicative.put("PG", "+675");
country_to_indicative.put("PY", "+595");
country_to_indicative.put("PE", "+51");
country_to_indicative.put("PH", "+63");
country_to_indicative.put("PL", "+48");
country_to_indicative.put("PT", "+351");
country_to_indicative.put("QA", "+974");
country_to_indicative.put("RO", "+40");
country_to_indicative.put("RU", "+7");
country_to_indicative.put("RW", "+250");
country_to_indicative.put("KN", "+1869");
country_to_indicative.put("LC", "+1758");
country_to_indicative.put("VC", "+1784");
country_to_indicative.put("WS", "+685");
country_to_indicative.put("SM", "+378");
country_to_indicative.put("ST", "+239");
country_to_indicative.put("SA", "+966");
country_to_indicative.put("SN", "+221");
country_to_indicative.put("RS", "+381");
country_to_indicative.put("SC", "+248");
country_to_indicative.put("SL", "+232");
country_to_indicative.put("SG", "+65");
country_to_indicative.put("SK", "+421");
country_to_indicative.put("SI", "+386");
country_to_indicative.put("SB", "+677");
country_to_indicative.put("SO", "+252");
country_to_indicative.put("ZA", "+27");
country_to_indicative.put("ES", "+34");
country_to_indicative.put("LK", "+94");
country_to_indicative.put("SD", "+249");
country_to_indicative.put("SR", "+597");
country_to_indicative.put("SZ", "+268");
country_to_indicative.put("SE", "+46");
country_to_indicative.put("CH", "+41");
country_to_indicative.put("SY", "+963");
country_to_indicative.put("TJ", "+992");
country_to_indicative.put("TZ", "+255");
country_to_indicative.put("TH", "+66");
country_to_indicative.put("TL", "+670");
country_to_indicative.put("TG", "+228");
country_to_indicative.put("TO", "+676");
country_to_indicative.put("TT", "+1868");
country_to_indicative.put("TN", "+216");
country_to_indicative.put("TR", "+90");
country_to_indicative.put("TM", "+993");
country_to_indicative.put("TV", "+688");
country_to_indicative.put("UG", "+256");
country_to_indicative.put("UA", "+380");
country_to_indicative.put("AE", "+971");
country_to_indicative.put("GB", "+44");
country_to_indicative.put("US", "+1");
country_to_indicative.put("UY", "+598");
country_to_indicative.put("UZ", "+998");
country_to_indicative.put("VU", "+678");
country_to_indicative.put("VA", "+39");
country_to_indicative.put("VE", "+58");
country_to_indicative.put("VN", "+84");
country_to_indicative.put("YE", "+967");
country_to_indicative.put("ZM", "+260");
country_to_indicative.put("ZW", "+263");
country_to_indicative.put("GE", "+995");
country_to_indicative.put("TW", "+886");
country_to_indicative.put("AZ", "+994");
country_to_indicative.put("MD", "+373");
country_to_indicative.put("SO", "+252");
country_to_indicative.put("GE", "+995");
country_to_indicative.put("AU", "+61");
country_to_indicative.put("CX", "+61");
country_to_indicative.put("CC", "+61");
country_to_indicative.put("NF", "+672");
country_to_indicative.put("NC", "+687");
country_to_indicative.put("PF", "+689");
country_to_indicative.put("YT", "+262");
country_to_indicative.put("GP", "+590");
country_to_indicative.put("GP", "+590");
country_to_indicative.put("PM", "+508");
country_to_indicative.put("WF", "+681");
country_to_indicative.put("PF", "+689");
country_to_indicative.put("CK", "+682");
country_to_indicative.put("NU", "+683");
country_to_indicative.put("TK", "+690");
country_to_indicative.put("GG", "+44");
country_to_indicative.put("IM", "+44");
country_to_indicative.put("JE", "+44");
country_to_indicative.put("AI", "+1264");
country_to_indicative.put("BM", "+1441");
country_to_indicative.put("IO", "+246");
country_to_indicative.put("VG", "+1284");
country_to_indicative.put("KY", "+1345");
country_to_indicative.put("FK", "+500");
country_to_indicative.put("GI", "+350");
country_to_indicative.put("MS", "+1664");
country_to_indicative.put("PN", "+870");
country_to_indicative.put("SH", "+290");
country_to_indicative.put("TC", "+1649");
country_to_indicative.put("MP", "+1670");
country_to_indicative.put("PR", "+1");
country_to_indicative.put("AS", "+1684");
country_to_indicative.put("GU", "+1671");
country_to_indicative.put("VI", "+1340");
country_to_indicative.put("HK", "+852");
country_to_indicative.put("MO", "+853");
country_to_indicative.put("FO", "+298");
country_to_indicative.put("GL", "+299");
country_to_indicative.put("GF", "+594");
country_to_indicative.put("GP", "+590");
country_to_indicative.put("MQ", "+596");
country_to_indicative.put("RE", "+262");
country_to_indicative.put("AX", "+35818");
country_to_indicative.put("AW", "+297");
country_to_indicative.put("AN", "+599");
country_to_indicative.put("SJ", "+47");
country_to_indicative.put("AC", "+247");
country_to_indicative.put("TA", "+290");
country_to_indicative.put("AQ", "+6721");
country_to_indicative.put("CS", "+381");
country_to_indicative.put("PS", "+970");
country_to_indicative.put("EH", "+212");
}
}
这篇关于如何在Android中使用libphonenumber API的手机号码获得国家code的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!