2010-10-22 52 views
0

我的應用程序的用戶將爲我提供他們將要撰寫的短信的收件人電話號碼。如果用戶在向本國國家的人發送信息時提供國家格式,如何確保使用國際電話號碼格式? 我是否真的必須知道所有國家使用的電話號碼的語法嗎?如果是這種情況(我希望它不是),有沒有人知道一個語法列表?如果不是,有什麼選擇?一個Android以外的解決方案可能? :)確保Android應用程序提供的電話號碼的國際格式?

在此先感謝!

此致
S.

+1

我真的很抱歉的說,但可能你需要捕獲所有格式支持的國家。問題是,這類信息將來會有變化(由於新的立法或某些事情),所以這是非常困難和複雜的問題。 – 2010-10-23 12:42:28

+0

感謝Paweł,我想我會繼續尋找其他解決方案,然後開始按照你的建議去做。 – stpn108 2010-10-23 15:38:42

回答

0

據我所知的電話號碼的國際格式爲+ - [「 - 」僅用於分離和表徵。 ]

當用戶把這種格式的電信運營商將能夠分析並重定向到正確的網絡(即使在當對方的電話是在同一個國家或地區的情況下)

所以,如果你遵循這種格式應該足夠了。您可以參考Wiki的鏈接。

問候,
維奈

+0

嗨Vinay,對,但我該如何處理用戶*沒有使用此格式的電話號碼? :)我的問題是我真的不知道如何可靠地提取區號和本地號碼來添加國家代碼並最終生成有效的國際號碼。 – stpn108 2010-10-22 15:14:35

+1

好的,我的建議是,1.如果電話號碼以'+'開始 - >將其假定爲國際格式。 2.如果電話號碼沒有以國家代碼開頭[使用getNetworkCountryIso()],則認爲這是本地號碼。現在添加上面的國家代碼並嘗試一下。 – Vinay 2010-10-22 18:15:11

+0

我也考慮過這種方法,但我至少有時需要在添加國家代碼之前編輯本地號碼。例如,對於德國的電話號碼,我不得不從電話號碼中刪除第一位數字,因爲德國的地​​區電話號碼始終以0開頭,在國際化時會丟棄。知道如何處理當地的地區代碼是我的主要問題,我猜...:-s – stpn108 2010-10-23 06:54:38

相關問題