我正在制作一个应用程序,其中BroadcastReceiver拦截传出呼叫,并在实际放置电话呼叫之前使用AlertDialog启动活动。我已经在几部手机上测试了不同的结果。在我测试的两部手机中,一切都运行良好,活动在拨打电话之前就开始了,因此" interupts"电话。活动关闭后,电话会恢复正常。
在第三部手机上,HTC,这不起作用。电话会话在活动开始前放置。我怎么能阻止这个?我应该寻找任何优先事项吗?
答案 0 :(得分:0)
欢迎来到涉及Android开发的HTC头痛的广泛世界,特别是关于广播接收器。感觉似乎总是以不同的方式处理事物,或以某种特殊方式处理。虽然这不是最好的答案,但评论太长了。看了一下之后,这是HTC的一个已知问题。似乎在Problem with interecepting outgoing calls on HTC Desire找到了一个快速解决方案,虽然有点过时了。
他们说你可以尝试
似乎HTC Desire(2.2)回应了
setResultData(null)
这将停止拨出表盘。然后你可以放置一个新的意图 (Action.CALL)调用新号码。不太好的解决方法,但是 用户几乎没有注意到它。
我再一次不确定这是否有效,或者是你正在寻找的答案,但对于评论来说太过分了:P