当我们在拨打长途电话时,通常会加上17951等等,通过这样省电话费。

那么这个是如何实现的呢?
这个功能是通过广播接收者来实现的,通过拦截,拨打电话的界面可以实现对号码的修改。

具体代码:

权限:<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
意图过滤器的acion:android.intent.action.NEW_OUTGOING_CALL

public class PhoneNumReciver extends BroadcastReceiver {


@Override
public void onReceive(Context context, Intent intent) {


System.out.println("来电话啦");

System.out.println(getResultData());
String num=getResultData();
//这里可以先判断手机号是联通还是移动,是不是本机号码,是不是本地的号码,下面只提供啦加17951的方法
if(!num.startsWith("17951"))
{
num="17951"+num;
}


setResultData(num);
}


}

更多相关文章

  1. Android-广播接收者;短信监听
  2. android 安卓APP获取手机设备信息和手机号码的代码示例
  3. Android(安卓)联系人 数据库解析
  4. Android(安卓)SMSC设置失败短信发送失败问题
  5. Android复习笔记(6) -BrodCastReceiver (广播接收者
  6. android/ophone中本机号码的获取
  7. Android通讯录模糊查询搜索(号码,姓名,首字母简拼,全拼),批量选
  8. Android(安卓)代码实现来电拦截
  9. Android从普通发送和接收短信到对短信进行拦截

随机推荐

  1. win10下mysql 8.0.13 安装配置方法图文教
  2. mysql 8.0.13 安装配置方法图文教程
  3. 详解mysql中的concat相关函数
  4. MySQL中因一个双引号错位引发的血案详析
  5. mysql 8.0.13 解压版安装配置方法图文教
  6. CentOS7.3下mysql 8.0.13安装配置方法图
  7. windows 64位下mysql 8.0.13 安装配置方
  8. mysql8.0.12如何重置root密码
  9. Mysql如何查询某条记录在分页的第几页详
  10. mysql8.0.11安装配置方法图文教程 MySQL8