我正在尝试通过我的Android应用中的 IMEI 拨拨USSD代码,绕过默认的android调用程序,并尝试检索响应,然后解析并进一步使用。 我希望从回调中的usdd代码返回信息,并进一步使用它。
我尝试了以下操作: 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.回调总是失败的。
该怎么办?