在我的android项目(目标SDK版本23)中,我想拒绝来电。我知道对此有很多疑问,特别是
1 如何将com.android.internal.telephony.ITelephony导入Android应用程序
2 如何在Android中以编程方式拒绝通话
在第一个链接中,建议的解决方案是在接口上使用反射,ITelephony因为它是内部接口。但是此解决方案使用MODIFY_PHONE_STATE权限,该权限只能授予系统应用程序,因此无论如何都无法使用。
ITelephony
MODIFY_PHONE_STATE
从第二个和第三个链接中,我知道解决方案是ITelephony从此处复制的,然后将其放入解决方案中的新软件包中com.android.internal.telephony。问题在于,在该界面中,存在很多关于类查找的问题android.telephony.RadioAccessFamily( 错误无法找到符号类RadioAccessFamily),该类位于android的平台框架库中。
com.android.internal.telephony
android.telephony.RadioAccessFamily
RadioAccessFamily
有解决这个问题的主意吗?
我自己找到了答案。对于有兴趣的人,在这里在这里,它是:
在主文件夹中创建aidl文件夹。
在aidl文件夹中创建包com.android.internal.telephony
在包中创建一个辅助文件:
interface ITelephony { boolean endCall(); void answerRingingCall(); }
不需要添加权限
android.permission.MODIFY_PHONE_STATE