android - END CALL through a Button -


i trying end call through button. end of call works fine on few phones. how make work in phones?

on few phone calls don't cut @ all?

here have tried:

onclick on end call following called:

 telephonymanager telephony = (telephonymanager)this.getsystemservice(context.telephony_service);      try      {         // java reflection gain access telephonymanager's         // itelephony getter         class c = class.forname(telephony.getclass().getname());         method m = c.getdeclaredmethod("getitelephony");         m.setaccessible(true);         com.android.internal.telephony.itelephony telephonyservice = (itelephony) m.invoke(telephony);         telephonyservice.endcall();         finish();          timeswapbuff += timeinmilliseconds;         customhandler.removecallbacks(updatetimerthread);     }     catch (exception e)      {         e.printstacktrace();         log.e("error", "fatal error: not connect telephony subsystem");         log.e("error", "exception object: " + e);     } 

let me know how fix this?

thanks!

/**  * reject button click listener reject incoming call.  */ private class rejectcallonclicklistener implements onclicklistener {     @override     public void onclick(view v) {         log.d(tag, "onrejectbutton: " + "reject onclick");         ignorecall();         exitcleanly();     } }  /**  * ignore incoming calls  */ private void ignorecall() {     if (use_itelephony)         ignorecallaidl();     else         ignorecallpackagerestart(); } /**  * aidl/itelephony technique ignoring calls  */ private void ignorecallaidl() {     try {         // telephonyservice.silenceringer();          telephonyservice.endcall();     } catch (remoteexception e) {         e.printstacktrace();         log.d(tag, "ignorecall: " + "error: " + e.getmessage());      } catch (exception e) {         e.printstacktrace();         log.d(tag, "ignorecall" + "error: " + e.getmessage());      } } /**  * package restart technique ignoring calls  */ private void ignorecallpackagerestart() {     activitymanager = (activitymanager) getsystemservice(activity_service);     am.restartpackage("com.android.providers.telephony");     am.restartpackage("com.android.phone"); } /**  * cleanup , exit routine  */ private void exitcleanly() {     unhookreceiver();     this.finish();  } 

Comments

Popular posts from this blog

windows - Single EXE to Install Python Standalone Executable for Easy Distribution -

c# - Access objects in UserControl from MainWindow in WPF -

javascript - How to name a jQuery function to make a browser's back button work? -