概述
电话打入和打出的区别
打入
TelephonyManager mTm = (TelephonyManager) this
.getSystemService(Context.TELEPHONY_SERVICE);
mCallListener = new CallInListener();
mTm.listen(mCallListener, PhoneStateListener.LISTEN_CALL_STATE);
private class CallInListener extends PhoneStateListener {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
if (state == TelephonyManager.CALL_STATE_RINGING) {
// 查号码得到地址
String address = NumberAddressDao.findAddress(
NumberAddressService.this, incomingNumber);
Log.d(TAG,"号码归属地是 : " + address);
// Toast.makeText(NumberAddressService.this,
// “号码归属地是 : ” + address, 1).show();
mAddressToast.show(address);
}else if (state == TelephonyManager.CALL_STATE_IDLE) {
mAddressToast.hide();
}
}
}
打出
mCallOutReceiver = new CallOutReceiver();
IntentFilter filter =new IntentFilter();
filter.addAction(Intent.ACTION_NEW_OUTGOING_CALL);
registerReceiver(mCallOutReceiver,filter);
private class CallOutReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
String number = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
String address = NumberAddressDao.findAddress(NumberAddressService.this, number);
// Toast.makeText(NumberAddressService.this,
// “号码归属地是 : ” + address, 1).show();
mAddressToast.show(address);
}
}
@Override
public void onDestroy() {
super.onDestroy();
Log.d(TAG, "归属地显示服务关闭");
mTm.listen(mCallListener,PhoneStateListener.LISTEN_NONE);
unregisterReceiver(mCallOutReceiver);
}
权限
最后
以上就是勤恳钢笔为你收集整理的电话打入和打出的区别电话打入和打出的区别的全部内容,希望文章能够帮你解决电话打入和打出的区别电话打入和打出的区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复