为什么 ACTION_CALL 无法在 Android 11 上工作

Why ACTION_CALL not working on Android 11

为什么我运行这个代码会出现这句话(to place a call enter a valid number)?

                Intent intent = new Intent(Intent.ACTION_CALL);
                intent.setData(Uri.parse("tel:" + "#1234#"));
                startActivity(intent);

但是如果您将数字从 "#1234#" 更改为 "123456789" 它可以正常工作 为什么 (#) 符号不被接受?

知道我加了

       <uses-permission android:name="android.permission.CALL_PHONE" />

在AndroidManifest.xml

注意:它仍然适用于低于 Android11 的版本,并且可以毫无问题地接受 (#) 符号。

您试过用“%”替换“#”吗?

Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:" + Uri.encode("#1234#")));
startActivity(intent);

这应该可以解决您的问题。