关闭系统对话框失败



我正在执行一个ussd代码在我的android应用程序在这个函数

public void onReceive(Context arg0, Intent arg1) {
String ussdCode = "*" + "199" + "*" + "8" + "*" + "0897067547" + Uri.encode("#");
switch (getResultCode())
{
case Activity.RESULT_OK:
Toast.makeText(getBaseContext(), "SMS delivered",
Toast.LENGTH_SHORT).show();
startActivity(new Intent("android.intent.action.CALL", Uri.parse("tel:" + ussdCode))); 
sendBroadcast(new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));
break;
case Activity.RESULT_CANCELED:
Toast.makeText(getBaseContext(), "SMS not delivered",
Toast.LENGTH_SHORT).show();
break;
}
}

我能够执行ussd代码,但之后我无法关闭ussd对话框。如何关闭ussd对话框

你没有。这是另一个应用程序的对话框,你不能关闭它。这就是为什么一般的规则是不要在Android中使用USSD的任何东西——它不仅不能跨运营商移植,而且没有真正的USSD API——你可以把它拼凑在一起(更不用说USSD本身就是一个黑客,现在网络服务和数据连接已经存在了)。

最新更新