2014-11-28 5 views
0

Я новый программист приложений для Android.Как сделать специальный телефонный звонок в Android, заканчивающийся на #

Я создал кнопку в своем приложении, которая вызывает число, т.е. *144#, но он игнорирует # и набирает номер * 144.

Как я могу гарантировать, что он называет весь номер?

Код сниппета:

Intent callIntent = new Intent(Intent.ACTION_CALL); 
callIntent.setData(Uri.parse("tel:*144#")); 
startActivity(callIntent);` 

ответ

0

Url закодировать.

String number = "tel:*144%23"; 
callIntent.setData(Uri.parse(asd)); 

Или, если вам нужен более общий подход (например, если вы измените число ...) - кодируют информационную часть URI с URLEncoder.

String number = "tel:"+ URLEncoder.encode("*144#"); 
.... 
-2

# это специальный символ, который посылает команду оператора. Я не думаю, что вы можете называть любое число, заканчивающееся #.

+0

Это не дает ответа на вопрос. Чтобы критиковать или просить разъяснения у автора, оставьте комментарий ниже их сообщения. –

+0

Я сказал, что эта просьба невозможна. поэтому на этот вопрос нет реального ответа – Adem

0

Простое использование Uri кодирование:

Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:"+ Uri.encode("*144#"))); 
startActivity(callIntent); 
0

Вы можете попробовать это:

Intent callIntent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:*144" + Uri.encode("#"))); 
    startActivity(callIntent); 

он работал для меня.

Смежные вопросы