如何结束我的呼出。 [英] how to end up my outgoing call.
本文介绍了如何结束我的呼出。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
与 statrtActivity(callIntent)
,电话会,然后我要等待几秒钟,自动结束。结束了我的电话我已经采取mycalss延伸的BroadcastReceiver然后在的onReceive()
我implemented.in这个方法我只拿到了设置的老号码,newnumber和烤面包是打印。
我想究竟是结束叫什么我需要写。以及如何从我的类调用的onReceive方法? plase帮助我。我没有得到任何地方。
@覆盖
公共无效的onReceive(上下文的背景下,意图意图){
最后弦乐oldNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
this.setResultData(newPhNnumber);
最后弦乐newNumber = this.getResultData();
如果((newNumber = NULL)及!&安培;!(newNumber = oldNumber))
{
弦乐味精=截获呼出老号+ oldNumber +,新号码+ newNumber;
Toast.makeText(背景下,味精,Toast.LENGTH_LONG).show();
this.abortBroadcast(); ---->它做什么?
}
解决方案
您可以尝试这样的:
TelephonyManager TM =(TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
尝试 {
C类=的Class.forName(tm.getClass()的getName());
方法米= c.getDeclaredMethod(getITelephony);
m.setAccessible(真正的);
ITelephony telephonyService =(ITelephony)m.invoke(商标);
telephonyService.endCall();
}赶上(例外五){
e.printStackTrace();
}
with statrtActivity(callIntent)
, call goes and then i have to wait for few seconds and end automatically. to end up my call i have taken mycalss extends Broadcastreceiver then in that onreceive()
i implemented.in that method i got only to set old number and newnumber and toast is printing.
What i want exactly is to end call what i need to write. and how to call onreceive method from my class? plase help me. i didnt get anywhere.
@Override
public void onReceive(Context context, Intent intent) {
final String oldNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
this.setResultData(newPhNnumber);
final String newNumber = this.getResultData();
if((newNumber!=null)&&(newNumber!=oldNumber))
{
String msg = "Intercepted outgoing call. Old number " + oldNumber + ", new number " + newNumber;
Toast.makeText(context, msg, Toast.LENGTH_LONG).show();
this.abortBroadcast();----> what it does?
}
解决方案
You may try this:
TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
try {
Class c = Class.forName(tm.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
ITelephony telephonyService = (ITelephony) m.invoke(tm);
telephonyService.endCall();
} catch (Exception e) {
e.printStackTrace();
}
这篇关于如何结束我的呼出。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文