我使用以下代码在特定条件下更改拨出电话的电话号码。代码似乎正在运作。吐司显示新旧号码,但电话拨号器在拨号屏幕中显示旧号码。 如果我在通话后检查通话记录详细信息,则会显示新号码。
如何让拨号器屏幕显示更新后的号码?
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)的手机上