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 フォンでテストしています。
たぶん、誰かが私を助けることができますか?