如何在Android应用程序中显示来电通知

时间:2010-05-05 08:44:33

标签: android

我希望在来电后显示一个对话框,以便我可以在接听电话时在后台运行我的应用程序。

如何在Android应用程序中捕获该来电???

2 个答案:

答案 0 :(得分:6)

在AndroidManifest.xml中你应该创建一个接收器:

<receiver android:name="IncomingCallInterceptor">                    
    <intent-filter>
         <action android:name="android.intent.action.PHONE_STATE"/>   
    </intent-filter>
</receiver>

并声明权限:

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

然后,

public class IncomingCallInterceptor extends BroadcastReceiver {


@Override 
public void onReceive(final Context context, Intent intent) {                                         
    String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);                         


    if (TelephonyManager.EXTRA_STATE_RINGING.equals(state)) {                                   

        // Phone is ringing

    }


}

}

答案 1 :(得分:2)

也许这个广播意图是您所需要的ACTION_PHONE_STATE_CHANGED