1

次のコードを使用して、特定の条件下で発信通話の電話番号を変更しています。コードは機能しているようです。トーストには古い番号と新しい番号が表示されますが、電話ダイヤラーのダイヤル画面には古い番号が表示されます。ただし、通話後に通話履歴の詳細を確認すると、新しい番号が表示されます。

ダイヤラー画面に更新された番号を表示するにはどうすればよいですか?

public void onReceive(Context context,Intent intent) {
        final String oldNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
        String modNumber = "";
        if (oldNumber.startsWith("xx")) {
            modNumber = oldNumber.replace("xx", "yyy");
            this.setResultData(modNumber ); 
            final String newNumber = this.getResultData();
            String msg = "Call Intercepted. Old number " + oldNumber + ", new number " + newNumber;
            Toast.makeText(context, msg, Toast.LENGTH_LONG).show();
        }
    }

android.permission.PROCESS_OUTGOING_CALLS はマニフェスト ファイルに存在します。

アプリは、Android 5.0.2 (Lollipop) を実行している電話に展開されます

4

0 に答える 0