當我們在撥打長途電話時,通常會加上17951等等,通過這樣省電話費。
那麼在Android中這個是如何實現的呢?
這個功能是通過廣播接收者來實現的,通過攔截,撥打電話的界面可以實現對號碼的修改。
具體代碼:
權限:<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);
}
}