我可以從來電或短信中獲取電話號碼。不幸的是,在SMS的情況下,可能會有國家代碼。所以,基本上我需要獲得沒有國家代碼的普通電話號碼,以便將其與聯繫人中的現有號碼進行比較。獲取Android中沒有國家代碼的電話號碼
8
A
回答
25
如果要比較的電話號碼,你可以隨時使用
PhoneNumberUtils.compare(number1, number2);
或
PhoneNumberUtils.compare(context, number1, number2);
然後,您不必擔心國家代碼,它只會比較相反順序的數字並查看它們是否匹配(足以滿足呼叫方ID的目的)。
-1
快速未經測試方法(據我所知電話號碼有10位數字):
// As I said, AFAIK phone numbers have 10 digits... (at least here in Mexico this is true)
int digits = 10;
// the char + is always at first.
int plus_sign_pos = 0;
// Always send the number to this function to remove the first n digits (+1,+52, +520, etc)
private String removeCountryCode(String number) {
if (hasCountryCode(number)) {
// +52 for MEX +526441122345, 13-10 = 3, so we need to remove 3 characters
int country_digits = number.length() - digits;
number = number.substring(country_digits);
}
return number;
}
// Every country code starts with + right?
private boolean hasCountryCode(String number) {
return number.charAt(plus_sign_pos) == '+'; // Didn't String had contains() method?...
}
,那麼你只需要調用這些函數
相關問題
- 1. 從國家或國家代碼獲取電話代碼 - Twilio
- 2. PHP - RegEx匹配電話號碼有或沒有國家代碼
- 3. 獲取給定電話號碼的詳細國家名稱和國家代碼
- 4. android撥入電話的國家代碼
- 5. 如何從給定的電話號碼獲得國家代碼
- 6. 將電話號碼轉換爲國際國家代碼iOS
- 7. 具有國家代碼和國旗的角度國際電話號碼
- 8. 使用電話號碼獲取來電國家名稱?
- 9. 如何從電話號碼中刪除「+」和國家代碼?
- 10. 電話號碼的國家列表
- 11. Android獲取國家代碼的位置
- 12. Validaiton電話號碼爲多個國家
- 13. 從電話號碼查找國家代碼
- 14. 根據國家代碼驗證電話號碼
- 15. 獲取ISO國家代碼
- 16. Android獲取ISO國家代碼
- 17. Android獲取設備國家代碼
- 18. 與javascript匹配電話國家代碼
- 19. 如何在android代碼中獲取手機的電話號碼?
- 20. 有什麼辦法從電話號碼查找國家代碼在php中?
- 21. Android:來電號碼格式,確定國家代碼?
- 22. 從電話號碼確定國際電話代碼的算法
- 23. 如何確定一個電話號碼(國家代碼)是否等於另一個(不包括國家代碼)
- 24. 拆分電話號碼(手機或座機)納入國家代碼,區號和電話號碼
- 25. 在android中獲取電話號碼
- 26. Python中得到的手機/電話號碼,MNC和國家代碼
- 27. 獲取Android設備的電話號碼
- 28. 國家代碼不是從Android中的國家/地區代碼選取器中獲取的
- 29. Android的 - 沒有得到電話號碼
- 30. 沒有得到android的電話號碼
這似乎對我來說足夠好。感謝您的幫助。 – Alin
很好的解決方案,這對我工作很好 – kathir