android之拨打电话时在电话号码前加17951

 
 
 当我们在拨打长途电话时,通常会加上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);
}


}

你可能感兴趣的:(android,String,Class,手机,电话)