如何检测私人号码

时间:2011-07-01 06:28:57

标签: android

我正在开发的应用程序在收到来自手机的未接来电或消息时自动发送消息。我的问题是当我从私人号码接到未接来电或从私人号码或服务器获取消息时(way2sms,160 / 2,ibibo)然后它也会自动发送消息。如何检测私人号码或服务器,以便我自动停止发送到该私人号码或服务器的消息..是否有任何验证检查私人号码?感谢

1 个答案:

答案 0 :(得分:1)

您可以使用BraodCast Receiver获取号码.Broadcast Receiver用于从后台更改中获取信息。

您可以按照以下方式获取号码。创建一个扩展BroadCastReceiver的接收器

 Bundle bundle = intent.getExtras();  
         if(null == bundle)
                 return;
         Log.i("IncomingCallReceiver",bundle.toString());
         String state = bundle.getString(TelephonyManager.EXTRA_STATE);            
         Log.i("IncomingCallReceiver","State: "+ state);
         if(state.equalsIgnoreCase(TelephonyManager.EXTRA_STATE_RINGING))
         {
             phonenumber = bundle.getString(TelephonyManager.EXTRA_INCOMING_NUMBER);
             Log.i("IncomingCallReceiver","Incoming Number: " + phonenumber);      
         }

之后在Android Manifest中添加此操作

    <receiver android:name=".SMSReceiver">
    <intent-filter>
         <action android:name="android.intent.action.PHONE_STATE"/>
    </intent-filter>
</receiver>