80,472
社区成员




import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.app.Service;
import android.telephony.TelephonyManager;
import java.lang.reflect.Method;
import android.widget.Toast;
public class PhoneListen extends BroadcastReceiver{
private static boolean mIncomingFlag = false;
private static String mIncomingNumber = null;
@Override
public void onReceive(Context context, Intent intent) {
//Dial number;
if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) {
;//这个是拨号的时候采用的到的,所以这里没用
} else {
//Get call;
TelephonyManager tManager = (TelephonyManager) context
.getSystemService(Service.TELEPHONY_SERVICE);
switch (tManager.getCallState()) {
//有电话打进来
case TelephonyManager.CALL_STATE_RINGING:
//mIncomingNumber就是来电号码
mIncomingNumber = intent.getStringExtra("incoming_number");
Toast.makeText(context, mIncomingNumber,
Toast.LENGTH_LONG).show();
break;
default:break;
}
}
}
}
<uses-permission android:name="android.permission.READ_PHONE_STATE" />