Android 自动接听来电

本文介绍了如何在Android设备上实现自动接听来电的功能。对于2.3以下版本,通过TelephonyManager的answerRingingCall方法;2.3及以上版本,由于权限限制,需要采用其他方法。文中分享了适用于不同型号手机(如HTC One X和三星i9000)的解决方案,并提供了测试结果。
摘要由CSDN通过智能技术生成

网上找到的,HTC One X,三星i9000 cm9 4.0.4测试通过,在此记录一下,大伙需要的话就拿去吧..


1. Android 2.3(不包括)以下,通过获取aidl远程服务接口TelephoneyManager来调用它的answerRingingCall方法(ps: 关于此方法具体做法,由于时间关系,我这里就不详细说啦,大家Google一下吧)

		TelephonyManager tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
		Class c = Class.forName(tm.getClass().getName());
		Method m = c.getDeclaredMethod("getITelephony");
		m.setAccessible(true);
		ITelephony telephonyService;
		telephonyService = (ITelephony) m.invoke(tm);

		// Silence the ringer and answer the call!
		telephonyService.silenceRinger();
		telephonyService.answerRingingCall();



2. Android 2.3(包括)以上,如果照样使用TelephoneyManager获取到的answerRingingCall方法的话,就会抛没有android.permission.MODIFY_PHONE_STATE权限异常,其实你已经配了这个权限的了,但是不好意思,你的App不是系统软件,没有系统签名,所以还是不能调用࿰

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值