如何在4.2等最新设备中结束对android的调用

时间:2014-09-30 13:27:54

标签: android

我使用以下代码结束通话,但它没有发生。

     private void endCallIfBlocked(String callingNumber) { 
             try { 
               TelephonyManager tm = (TelephonyManager) getApplicationContext().getSystemService(getApplicationContext().TELEPHONY_SERVICE); 
               Class c = Class.forName(tm.getClass().getName()); 
               Method m = c.getDeclaredMethod("getITelephony"); 
               m.setAccessible(true); 
               ITelephony telephonyService = (ITelephony) m.invoke(tm);
               telephonyService = (ITelephony) m.invoke(tm); 

               telephonyService.silenceRinger(); 
               telephonyService.endCall(); 
             } 
             catch (Exception e) { 
               e.printStackTrace(); 
             } 
           }

    }

我没有得到'getITelephony'对象,它会抛出异常。我正在使用三星Galaxy s duos手机。如何以编程方式阻止调用

1 个答案:

答案 0 :(得分:0)

从Android 4 +开始,getITelephony Reflection方法已被弃用。

因此,您无法在Android 4 +上使用它。