Android调用ITelephony类的endCall()方法

转载 2012年03月28日 14:12:10

原文:http://topic.csdn.net/u/20091226/00/09e2979b-7c8c-4991-856d-586a278875c0.html

1. 在src下新建一个包:com.android.internal.telephony(和ITelephony.aidl 中 package 声明的包名一样);
2. 然后从系统源码中把ITelephony.aidl文件拷贝到 com.android.internal.telephony包下。(也可以先新建一个ITelephony.aidl, 然后再把内容拷贝进去(ITelephony.aidl文件内容可以在http://www.netmite.com/android/mydroid/1.5/frameworks/base/telephony/java/com/android/internal/telephony/ITelephony.aidl 找到,这个方法适合没有SDK源码文件的开发者));
3. 在src下新建一个包:android.telephony, 然后新建一个NeighboringCellInfo.aidl,其内容为:
package android.telephony;

parcelable NeighboringCellInfo;

4.从私有方法中获取ITelephony: 代码如下。

tManager = (TelephonyManager)
this.getSystemService(Context.TELEPHONY_SERVICE);
//初始化iTelephony
Class <TelephonyManager> c = TelephonyManager.class;
Method getITelephonyMethod = null;
try {
getITelephonyMethod = c.getDeclaredMethod("getITelephony", (Class[])null);
getITelephonyMethod.setAccessible(true);
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

try {
iTelephony = (ITelephony) getITelephonyMethod.invoke(tManager, (Object[])null);
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

相关文章推荐

Android调用ITelephony类的endCall()方法 【转】

原文:http://topic.csdn.net/u/20091226/00/09e2979b-7c8c-4991-856d-586a278875c0.html 出处: http://blog.cs...

Android调用ITelephony类的endCall()方法 【转】

原文:http://topic.csdn.net/u/20091226/00/09e2979b-7c8c-4991-856d-586a278875c0.html 出处: http://blog....

android_ITelephony_endCall_挂断电话

由于系统API并没有给我们提供Itelephony这个电话管理服务类的接口使用,所以我们就得通过非正常手段来得到这个服务接口.(通过源码中的Itelephony.aidl来帮助我们生成电话管理服务接口...

android调用ITelephony类,AIDL实现电话,联系人黑名单拦截挂断服务

版权声明:本文为博主原创文章,未经博主允许不得转载。 首先新建AIDL文件,ITelephony.aidl。注意包名为com.android.internal.telephony,不可更改,此时需要...

android黑名单挂断电话(endCall)反射方法获取

由于保证手机安全性,挂断电话的endcall方法被隐藏了。但是我们可以通过java反射机制获得此方法去拦截电话 //获取到系统的电话服务 TelephonyManager tm = (...

Android拒绝来电的实现--ITelephony类的反射

原文地址:http://blog.csdn.net/geolo/article/details/6090303 NeighboringCellInfo.aidl [ja...

Android拒绝来电的实现--ITelephony类的反射(结束电话)

NeighboringCellInfo.aidl view plainprint? package android.telephony;   parcelable N...

Android自动挂断来电(ITelephony的使用)

项目中需要在接收到来电之后把电话挂断,再做一些事情,在研究了Android源码以及参考了网络资料之后得出了如下方法:  1、定义并注册广播:  Java代码   publ...

利用JAVA反射机制访问ITelephony隐藏接口(android程序中挂断电话)

这两天研究如何利用程序挂断电话。发现在Android1.0的时候Phone中提供了提供了endCall方法,而1.5以后这个方法被设置为私有了。 如此有了如下研究: /** * 利用JAVA...

EndCall.zip

  • 2015年08月21日 15:00
  • 2MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android调用ITelephony类的endCall()方法
举报原因:
原因补充:

(最多只允许输入30个字)