Получить данные, возвращенные с USSD-кодов Android - PullRequest
0 голосов
/ 31 августа 2018

Я пытаюсь набрать USSD-код для IMEI из моего приложения для Android , минуя стандартную программу-андроид и пытаясь получить ответ из него, разбери его и используй дальше. Я хочу получить информацию, возвращенную из кода ussd в обратном вызове, и использовать ее далее.

Я пробовал следующие вещи: 1. Аналитические услуги 2. приведенный ниже код -

TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
            Handler handler = new Handler();

            TelephonyManager.UssdResponseCallback responseCallback = new TelephonyManager.UssdResponseCallback() {
                @Override
                public void onReceiveUssdResponse(TelephonyManager telephonyManager, String request, CharSequence response) {
                    super.onReceiveUssdResponse(telephonyManager, request, response);

                    Toast.makeText(MainActivity.this, response.toString(), Toast.LENGTH_SHORT).show();
                }

                @Override
                public void onReceiveUssdResponseFailed(TelephonyManager telephonyManager, String request, int failureCode) {
                    super.onReceiveUssdResponseFailed(telephonyManager, request, failureCode);

                    Toast.makeText(MainActivity.this, String.valueOf(failureCode), Toast.LENGTH_SHORT).show();
                }
            };

            telephonyManager.sendUssdRequest("*#06#", responseCallback, handler);

Возникли проблемы: 1. Не умеет запускать USSD коды. 2. Обратный вызов всегда сбой.

Что можно сделать для достижения этой цели?

...