연락처를 테스트 할 때 버그가 있습니다. 버그 주소는 PhoneNumberUtils.charToBCD()입니다.android의 전화 번호의 특수 문자
오류는 java.lang.RuntimeException : BCD의 잘못된 문자입니다. 즉 ;
은 처리되지 않습니다.
전화 번호의 특수 문자의 의미는 무엇입니까?
이 문제에 대해 감사드립니다.
연락처를 테스트 할 때 버그가 있습니다. 버그 주소는 PhoneNumberUtils.charToBCD()입니다.android의 전화 번호의 특수 문자
오류는 java.lang.RuntimeException : BCD의 잘못된 문자입니다. 즉 ;
은 처리되지 않습니다.
전화 번호의 특수 문자의 의미는 무엇입니까?
이 문제에 대해 감사드립니다.
, 그래서 아마 그것을 구문 분석하려고 vCard의 전화 번호.
vCard에서 전화 번호는 일반적으로 자유 형식 텍스트로 인코딩됩니다. 즉, 전화 번호는 임의의 문자를 포함 할 수 있음을 의미합니다.
또한 URI로 인코딩 될 수 있습니다. 전화 번호에 확장자가 있으면 전화 번호 URI에 세미콜론이 포함됩니다. 예 :
tel:+1-555-555-5555;ext=5555
예외는 함수에 전달되는 PhoneNumberUtils.java - android-vcard
에
private static int
charToBCD(char c) {
if (c >= '0' && c <= '9') {
return c - '0';
} else if (c == '*') {
return 0xa;
} else if (c == '#') {
return 0xb;
} else if (c == PAUSE) {
return 0xc;
} else if (c == WILD) {
return 0xd;
} else {
throw new RuntimeException ("invalid char for BCD " + c);
}
}
인해
은 그래서;
을 확인 슬로우됩니다
@SreekeshOkky는 그의 대답에서 "vCard를"을 언급
구문 분석하려고하는 데이터 또는 문제의 원인이되는 문자를 게시 해보십시오. – JoxTraex