【问题标题】:Android reject incoming call安卓拒绝来电
【发布时间】:2015-12-11 14:53:22
【问题描述】:

在我的 android 项目中(使用目标 sdk 版本 23),我想拒绝来电。 我知道对此有很多疑问,尤其是

1 How to import com.android.internal.telephony.ITelephony to the Android application

2How to Reject a call programatically in android

3How to reject any incoming call when I have already detected it

在第一个链接中,建议的解决方案是在接口ITelephony 上使用反射,因为它是一个内部接口。但是这个解决方案使用了MODIFY_PHONE_STATE权限,这个权限只能授予系统应用,所以无论如何都不会工作。

从第二个和第三个链接,我了解到解决方案是从here 复制ITelephony,然后将其放入我的解决方案中com.android.internal.telephony 的新包中。 问题是这个接口有很多关于查找类android.telephony.RadioAccessFamily的问题(错误找不到符号类RadioAccessFamily),那个类在platform framework base of android

有解决这个问题的办法吗?

【问题讨论】:

  • 您能否发布您的相关代码,我不认为需要 RadioAccessFamily。也可以试试emoticode.net/android-sdk/…的教程
  • 代码是接口 ITelephony 不是我的 android 代码。教程老了,2年前,我用like target sdk version 23

标签: java android phone-call callblocking


【解决方案1】:

我自己找到了答案。对于其他感兴趣的人,这里是here

在主文件夹中创建aidl文件夹。

在aidl文件夹中创建包com.android.internal.telephony

在包中创建一个aidl文件:

interface ITelephony {      

    boolean endCall(); 
    void answerRingingCall();      

}

关于结束通话的代码见link中的答案。

而且不需要添加权限

android.permission.MODIFY_PHONE_STATE

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多