2012-05-18 79 views
1

我正在開發一個撥號程序,我一直在測試我的摩托羅拉設備和通過SDK管理器下載的模擬器圖像。用三星Android手機上的逗號/暫停來撥打電話號碼

用戶輸入號碼,或從最近的通話或聯繫人中選擇。然後我火了這樣的電話(逗號有這麼有發送撥號音之前的延遲):

String url = "tel:" + preDial + " ,,, " + postDial; 
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse(url)); 
startActivity(intent); 

在我的手機和仿真器,手機應用程序顯示preDial與其聯繫人姓名,並將其正常插入最近的通話記錄中。但是,當我在朋友的Samsung Charge上測試它時,它顯示了url的內容(當然不包括「tel:」)。例如,如果preDial = "15555555555"postDial = "1111"電話應用程序將顯示15555555555 ,,, 1111,並且將不會顯示相應的聯繫人名稱,因爲聯繫人沒有編號,附加了1111。這也將通話記錄搞砸了,因爲這個沒有聯繫的笨拙號碼被存儲在那裏。我假設這是三星如何實現他們的手機功能,我希望有一種解決方法。

我可以通過從通話記錄中刪除LIKE preDial來修復通話記錄,但手機應用中的號碼顯示方式仍然存在問題。有沒有人知道這是比三星更普遍的問題,如果有任何解決方法嗎?

回答

1

我會說這是摩托羅拉如何實施的事情,因爲我從來沒有想過在兩者之間使用逗號..你是否僅僅嘗試不用逗號? String url = "tel:" + preDial + postDial;

編輯:檢查這個explanation/advice by @RetoMeier ..

希望它幫助,真的希望你的UI是比一個好,我評論下來..)

乾杯

+0

我需要逗號延遲發送撥號音 – Eliezer

+1

爲什麼你需要延遲? O.o之前(讀上個世紀)逗號用於延遲連接tom',比方說,撥打互聯網提供商..目的是解決最終的線路連接問題..但今天?!用戶會想知道爲什麼延遲撥號,這是不是很平常..你可以詳細闡述目的嗎? p.s.請不要告訴我你的用戶界面看起來像這樣http://goo.gl/LHWyc – Ewoks

+0

lol我不能詳細說明爲什麼我需要這個延遲,但它肯定是需要的,用戶知道的和期望的東西 – Eliezer

0

嘗試類似這個,

String tel = preDial + " ,,, " + postDial; 
// it will remove all things except number's 
       tel = tel.replaceAll("\\D", ""); 
       Intent callIntent = new Intent(Intent.ACTION_CALL); 
       callIntent.setData(Uri.parse("tel:" + tel)); 
       startActivity(callIntent); 
+0

這將如何幫助我使用逗號?我需要逗號延遲發送撥號音 – Eliezer

相關問題