我想阻止特定号码的来电。首先我尝试所有来电。 它运作良好。 但是当我尝试特定数量由下面的代码调用不拒绝,电话响起,我试图用我的Android手机..我想拒绝某个特定号码的来电,但它不起作用
@Override
public void onReceive(Context context, Intent intent) {
Log.v(TAG, "Receving....");
String t1="01741297163",t2="08801741297163";
TelephonyManager telephony = (TelephonyManager)
context.getSystemService(Context.TELEPHONY_SERVICE);
try {
Class c = Class.forName(telephony.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
Bundle b=intent.getExtras();
num=b.getString(telephony.EXTRA_INCOMING_NUMBER);
if(num.equals(t1)||num.equals(t2)){
telephonyService = (ITelephony) m.invoke(telephony);
//telephonyService.silenceRinger();
telephonyService.endCall();
} }catch (Exception e) {
e.printStackTrace();
}
我不知道来电号码的格式从获得电话管理员。
我尝试用这种“8801741297163” +88国家代码,而不是作品,那么,我要为来电号码最后的11位和没有国家代码进行比较,然后它工作顺利。为什么我要显示来电号码。 –
Put Log.v(TAG,“Receving num =”+ num);并检查正在打印什么 – Antrromet