Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.IllegalStateException:结果未挂起时调用_Java_Android - Fatal编程技术网

java.lang.IllegalStateException:结果未挂起时调用

java.lang.IllegalStateException:结果未挂起时调用,java,android,Java,Android,我正在创建拨号器,我想在点击按钮时断开呼叫,我正在尝试 public class OutgoingCallListener extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { setResultData(null); } } 在这里,我在按钮onclick函数中被调用 try{ Ou

我正在创建拨号器,我想在点击按钮时断开呼叫,我正在尝试

public class OutgoingCallListener extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {     
            setResultData(null);
    }

}
在这里,我在按钮onclick函数中被调用

try{
        OutgoingCallListener out = new  OutgoingCallListener();
        Intent intent = new Intent();
        out.onReceive(this, intent);    
    }catch(Exception e){
        Log.i("ii", "exception in end call", e);
    }
这里是完整的日志跟踪

exception in end call
    06-17 17:48:05.282: I/ii(17159): java.lang.IllegalStateException: Call while result is not pending
    06-17 17:48:05.282: I/ii(17159):    at android.content.BroadcastReceiver.checkSynchronousHint(BroadcastReceiver.java:780)
    06-17 17:48:05.282: I/ii(17159):    at android.content.BroadcastReceiver.setResultData(BroadcastReceiver.java:586)
    06-17 17:48:05.282: I/ii(17159):    at me.cs.oicalls.OutgoingCallListener.onReceive(OutgoingCallListener.java:14)
    06-17 17:48:05.282: I/ii(17159):    at me.cs.oicalls.CallOut.endCall(CallOut.java:106)
    06-17 17:48:05.282: I/ii(17159):    at java.lang.reflect.Method.invokeNative(Native Method)
    06-17 17:48:05.282: I/ii(17159):    at java.lang.reflect.Method.invoke(Method.java:525)
    06-17 17:48:05.282: I/ii(17159):    at android.view.View$1.onClick(View.java:3602)
    06-17 17:48:05.282: I/ii(17159):    at android.view.View.performClick(View.java:4212)
    06-17 17:48:05.282: I/ii(17159):    at android.view.View$PerformClick.run(View.java:17476)
    06-17 17:48:05.282: I/ii(17159):    at android.os.Handler.handleCallback(Handler.java:800)
    06-17 17:48:05.282: I/ii(17159):    at android.os.Handler.dispatchMessage(Handler.java:100)
    06-17 17:48:05.282: I/ii(17159):    at android.os.Looper.loop(Looper.java:194)
    06-17 17:48:05.282: I/ii(17159):    at android.app.ActivityThread.main(ActivityThread.java:5371)
    06-17 17:48:05.282: I/ii(17159):    at java.lang.reflect.Method.invokeNative(Native Method)
    06-17 17:48:05.282: I/ii(17159):    at java.lang.reflect.Method.invoke(Method.java:525)
    06-17 17:48:05.282: I/ii(17159):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
    06-17 17:48:05.282: I/ii(17159):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
    06-17 17:48:05.282: I/ii(17159):    at dalvik.system.NativeStart.main(Native Method)

为什么要调用onReceive方法

BroadcastReceive()方法在触发该事件时自动被调用(如果您注册了OutgoingCallListener,则在您的情况下)

供参考:与(未响应)相同