我有应用程序,它发送一些 USSD 代码。在一种情况下,来自带有界面的用户操作,在另一种情况下 - 当收到一些 SMS(带通配符)时。
我有一个发送 USSD 的代码:
private static void setCallDivert (Context context, String phoneNo) {
String callForwardString = "**21*" + phoneNo + "#";
Log.i("Call forward string", callForwardString);
Intent intentCallForward = new Intent(Intent.ACTION_CALL);
intentCallForward.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Uri uri2 = Uri.fromParts("tel", callForwardString, "#");
intentCallForward.setData(uri2);
context.startActivity(intentCallForward);
divertDbRecord (context, true, phoneNo);
}
当它从按钮 onClick 方法调用时,它工作正常。
当它从 SMS Handler 调用时,会出现消息“呼叫转移连接问题或无效的 MMI 代码”。
在 logcat 中,我可以看到一个请求。在这两种情况下都是一样的。
当然,我是在真正的 Android 手机上测试它,而不是在模拟器上。
也许,有人可以帮助我吗?