我想在应答呼叫后拨打一个号码,这通常是通过通话中拨号键盘完成的。
我尝试了以下方法,但它开始拨打一个新的呼叫(ACTION_VIEW也是如此)。
Intent dial = new Intent(Intent.ACTION_DIAL);
dial.setData(Uri.parse("tel:9"));
startActivity(dial);我猜"tel:“会触发一个新的拨号序列。我可能需要的是显示呼叫中的拨号盘并模拟击键。
有没有人?
编辑:我找到了这个问题Starting the InCallScreen activity,它让我认为我只需要发送一个keydown事件到‘com.android.hone.InCallScreen’,但我不确定如何做到这一点。这也是一个直接相关的问题,已经(并且仍然是)存在多年:http://code.google.com/p/android/issues/detail?id=1428
发布于 2012-12-02 06:02:38
不是的。不是电话:触发了一个新的呼叫,而是你创建了一个新的意图,然后运行startActivity(拨号);
想一想这意味着什么:您正在启动一个全新的活动,因此它不能与您之前的代码正在使用的与电话相关的活动交互。
我认为你真正想要做的是在你所拨打的内容的末尾加上一个号码。为此,您需要在URI数据中放入整个数字和一个暂停字符(p),并使用ACTION_CALL。代码:
Intent dial = new Intent(Intent.ACTION_CALL);
dial.setData(Uri.parse("tel:7195555555ppp9"));
startActivity(dial);我做了三次停顿,你应该根据需要的时间来调整。或者,使用等待字符(w),但这似乎需要用户确认才能发送额外的数字。
https://stackoverflow.com/questions/10132169
复制相似问题