Я отправляю ussd запрос с алфавитными буквами. Поскольку в моем ussd есть текст. Но текст исчезает. * 898 * 1 * 2 * 3 * tt3296949 * 500 # необходимо отправить. Но Action.Call показывает * 898 * 1 *2 * 3 * 3296949 * 500 #.
String [] data =
mPresenter.getFieldsElements(mLinearLayoutFields);
String ussd;
if (mCategoryResponse.getId() == 1) {
ussd = "*898*1*"+ mCategoryResponse.getId();
}else {
ussd = "*898*1*"+ mCategoryResponse.getId()+"*"+Constants.merchantOrder;
}
for (int i = 0; i < data.length; i++) {
ussd = ussd+"*"+Uri.encode(data[i]);
}
ussd = ussd+"#";
if (offlineMode()) {
RxPermissions rxPermissions = new RxPermissions(this);
String finalUssd = ussd;
rxPermissions.request(
Manifest.permission.CALL_PHONE)
.subscribe(granted -> {
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.fromParts("tel", finalUssd, null));
startActivity(callIntent);
});
}