我猜答案是否定的,但为了以防万一,我很好奇是否有办法编写一个接收器,当手机开始接听电话时会启动应用程序。甚至像对话活动那样简单的说“你的手机响了”。或者手机是否会抑制试图运行的任何其他应用?
答案 0 :(得分:2)
您可以注册BroadcastReceiver
来“收听”......
TelephonyManager.ACTION_PHONE_STATE_CHANGED
然后,您可以EXTRA_STATE
检查CALL_STATE_RINGING
。
但是,我不确定您为什么要“启动应用”。你说......
甚至可以像对话活动一样简单地说“你的手机响了”。
我的手机已经告诉我,当我的手机响铃时 - 我会根据谁给我打电话来获取自定义铃声,我也可以看到他们的照片。我不太确定你在这里想要达到的目标。
答案 1 :(得分:0)
我认为这个问题可能已经在SO上提出了问题:
Catch a Ring event
首先,我不是Android程序员,但我很确定你可以做你想要的。
基本上,Android操作系统正在运行设备并处理来电(智能手机现在的电脑比电话更多)。我假设操作系统中嵌入的是一系列“事件”或“状态更改/标志”,操作系统用它来中断其他正在运行的程序,当硬件注意到来电时,它会将焦点切换到电话应用程序。
我相信可以检测并对事件作出反应,因为手机在后台运行守护进程时会发生电话呼叫。我阅读了其他SO帖子链接到的大部分博客文章,它看起来像是一些中等复杂的东西,但并非不可能。
祝你好运!