行动电话正在android 4.1果冻豆上打开拨号器

行动电话正在android 4.1果冻豆上打开拨号器,android,android-intent,Android,Android Intent,我的应用程序中有一个功能,可以直接拨打电话号码,而无需通过android dallier, 安卓2.2和2.3上的一切都很好, 但是现在自从我把手机升级到4.1以后, 呼叫意图为“行动呼叫”和非“行动拨号” 仍然会转到拨号器屏幕,等待用户点击呼叫按钮 以下是负责直接拨打电话号码的代码块: void makeCall(Context context,String number){ Intent callIntent = new Intent(Intent.ACTION_CALL); //

我的应用程序中有一个功能,可以直接拨打电话号码,而无需通过android dallier, 安卓2.2和2.3上的一切都很好, 但是现在自从我把手机升级到4.1以后, 呼叫意图为“行动呼叫”和“行动拨号” 仍然会转到拨号器屏幕,等待用户点击呼叫按钮

以下是负责直接拨打电话号码的代码块:

void makeCall(Context context,String number){
 Intent callIntent = new Intent(Intent.ACTION_CALL);  
 // Add the additional flags required for staring new Activity.
 callIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
 callIntent.setData(Uri.parse("tel:"+number));
 context.startActivity(callIntent);
}
我还在清单中设置了调用权限

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


还有其他人遇到过类似的问题吗?

似乎android将“999999999 1”、“999999999 2”、“999999999 3”视为自android 4.1以来的一个虚拟电话号码,我在测试中使用它作为虚拟电话号码,而普通号码直接拨号,上面的号码显示在拨号器中。

您不能按住
CALL_PRIVILEGED
,除非你是固件的一部分。除此之外,尝试摆脱
标记活动\u新任务
。如果这两个帮助都没有,请回复。Heyy感谢您的评论,删除CALL_PRIVILEGED没有帮助,我需要在我从后台启动CALL活动时标记_ACTIVITY_NEW_任务,而我的应用程序实际上没有运行任何活动。但我意识到,如果电话簿中有被呼叫的电话号码,电话会直接启动,如果没有,拨号器就会打开,这就解决了我的问题,谢谢:)(可能是安卓4.1之后的安全功能)