Как отправить код USSD, содержащий десятичную с плавающей запятой (.)?
Мне нужно отправить USSD-код, содержащий двойное значение, представляющее сумму баланса, подлежащую переводу. Это значение состоит из целого числа и, возможно, десятичного разделителя и еще 2 цифр. Мой код выглядит следующим образом:
double doubleValue = 0.70;
String phoneNumber = "51234567", pincode = "1234";
String ast = Uri.encode("*");
String baseUssd = ast + "234" + ast + "1" + ast + phoneNumber + ast + pincode + ast;
StringBuilder builder = new StringBuilder();
builder.append(baseUssd);
builder.append(doubleValue); //i.e: 1.35, 0.80
builder.append(Uri.encode("#"));
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + builder.toString()));
startActivity(intent);
Мой телефон обрабатывает doubleValue как 135, 080 и т. Д., Игнорируя символ разделителя точек. Я надеюсь, что окончательный код включает в себя «точку», что позволяет отправить десятичное значение. Кто-то решил эту проблему?