Трябва да изпратя 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 и т.н., като пренебрегва знака за разделяне на точки. Надявам се, че крайният код включва "точка", позволяваща изпращане на десетичната стойност. Някой разреши ли този проблем?