Android звонит с "#" на конце
Я нашел этот код на этом форуме, но у меня проблема в том, что я не могу использовать этот символ (#
или же /u0023
) в телефонном номере.
Я знаю, что этот вопрос уже задавался, но вы, возможно, знаете приложение "Go SMS Pro", и это приложение действительно может позвонить по этому номеру. Теперь я хочу спросить вас, знаете ли вы, как управлять этим.
try {
Intent callIntent = new Intent(Intent.ACTION_CALL);
String number = "tel:*100#"; /This is the number
callIntent.setData(Uri.parse(asd));
startActivity(callIntent);
TelephonyManager tManager = (TelephonyManager)
getSystemService(Context.TELEPHONY_SERVICE);
PhoneStateListener listener = new PhoneStateListener();
tManager.listen(listener, PhoneStateListener.LISTEN_CALL_STATE);
} catch (ActivityNotFoundException activityException) {
Log.e("telephony-example", "Call failed", activityException);
}
1 ответ
Решение
URL закодировать.
String number = "tel:*100%23";
callIntent.setData(Uri.parse(asd));
Или, если вам нужен более общий подход (например, если вы меняете числа...) - кодируйте часть данных URI с помощью URLEncoder.
String number = "tel:"+ URLEncoder.encode("*100#");
....