相关疑难解决方法(0)

没有这样的方法getITelephony断开Call

我想断开ICS的拨出电话.

我的问题首先是我没有在姜饼中获得IC中的广播它工作正常并且阻止了呼叫但是在ICS中它不是广播.

对于BroadCast我创建了一个服务,并且我PHONE_STATE在ICS中也获得了BroadCast,但当我尝试断开呼叫时,我收到了错误

NO such method name 'getITelephony'
Run Code Online (Sandbox Code Playgroud)

在ICS呼叫中没有断开连接.

我正在使用以下代码断开使用BroadCast的呼叫...

try{
       TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
       Class c = Class.forName(manager.getClass().getName());
       Method m = c.getDeclaredMethod("getITelephony");
       m.setAccessible(true);
       ITelephony telephony = (ITelephony)m.invoke(manager);
       telephony.endCall();
  } catch(Exception e){
       Log.d("",e.getMessage());
  }
Run Code Online (Sandbox Code Playgroud)

AndroidMaifest.xml

PhonecallStateBroadcastReceiver.java

与packgename package com.android.internal.telephony;

ITelephony.aidl

interface ITelephony 
{
    boolean endCall();
    void answerRingingCall();
    void silenceRinger();
}
Run Code Online (Sandbox Code Playgroud)

android broadcastreceiver android-4.0-ice-cream-sandwich

11
推荐指数
1
解决办法
3546
查看次数