Android 如何在固定秒后中止传出呼叫?

Android 如何在固定秒后中止传出呼叫?,android,telephony,telephonymanager,Android,Telephony,Telephonymanager,我正在开发android应用程序,它可以在其他手机上拨打特定持续时间的未接电话,如5秒、10秒。一旦通过程序拨打特定号码,我就会被击中。我的程序失去控制,在拨打电话后的固定秒数后,我如何结束通话,通用SDK只允许发起呼叫,不允许堕胎 我是android新手,在网上对此做了深入的搜索,一些人提到使用JAVA反射和内部电话技术,但我没能做到,尽管我在Symbian s-60平台上做到了这一点 有什么建议吗 import android.content.BroadcastReceiver;

我正在开发android应用程序,它可以在其他手机上拨打特定持续时间的未接电话,如5秒、10秒。一旦通过程序拨打特定号码,我就会被击中。我的程序失去控制,在拨打电话后的固定秒数后,我如何结束通话,通用SDK只允许发起呼叫,不允许堕胎

我是android新手,在网上对此做了深入的搜索,一些人提到使用JAVA反射和内部电话技术,但我没能做到,尽管我在Symbian s-60平台上做到了这一点

有什么建议吗

    import android.content.BroadcastReceiver;
     import android.content.Context;
     import android.content.Intent;
     import android.util.Log;
     import android.widget.Toast;

     public class OutgoingCallReceiver extends BroadcastReceiver {


         @Override
         public void onReceive(Context context, Intent intent) {
    if(intent.getAction().equals(Intent.NEW_OUTGOING_CALL))
     {
       abortBroadcast ();
       }
    }
      }
需要

<uses-permission android:name="android.permission.CALL_PHONE"/>

使用
telephony.aidl
接口它由名为
endCall()
的方法组成,该方法用于终止正在进行的呼叫

当您的呼叫处于
振铃
状态或处于
摘机
状态时,宽频广播接收器的onReceive()方法启动计时器

在该计时器中使用endCall()方法


如果您需要我提供更多信息,请告诉我

我已经编写了以下代码,但它不起作用,调用未中止[link](),请帮助他们您正在实现什么?不能使用startActivity调用广播接收器。只需参考一些关于如何引发接收器动作的示例。您需要使用sendBroadCast()发送接收器操作。很抱歉,前面做了一些错误的操作,现在我已经阅读了广播接收器实现的基本代码,其中也打印了传出号码。它正在准确地执行此操作,但调用没有中止,代码在这里@dependersingla我已经阅读了您的代码。BroadCastReceiver类将响应所有操作。所以它可能会打印你的日志。请在if循环中的abortBroadcast()之前添加您的电话号码日志打印代码。如果它打印出来,那就很奇怪了。如果未打印,则在AndroidManifest.xml中的receiver标记中添加receiver操作。希望这对你有用。它也在循环内部打印代码,我尝试了使用internaltelephony的不同方法,即使不起作用,你能试试[链接]()