android-实现黑名单拦截
16lz
2021-01-26
Android没有对外公开结束通话的API,如果需要结束通话,必须使用AIDL与电话管理服务进行通信,并调用服务中的API实现结束通话,方法如下:
1> 从Android的源代码中拷贝以下文件到项目中:
com.android.internal.telephony包下的ITelephony.aidl
android.telephony包下的NeighboringCellInfo.aidl
注意:需要在项目中建立对应的包名存放上述两个aidl文件,
如右图所示。开发工具会在gen目录下自动生成ITelephony.java
2> 调用ITelephony.endCall()结束通话:
Method method = Class.forName("android.os.ServiceManager").getMethod("getService", String.class);IBinder binder = (IBinder)method.invoke(null, new Object[]{TELEPHONY_SERVICE});ITelephony telephony = ITelephony.Stub.asInterface(binder);telephony.endCall();
3> 在清单文件AndroidManifest.xml中添加权限:
更多相关文章
- Android(安卓)选择文件并获取路径
- android_1
- Android(安卓)logback代码配置详解
- Android文件存储--采用SharedPreferences保存用户偏好设置参数和
- AndroidManifest.xml文件综合详解
- FFmpeg编程开发笔记 —— Android(安卓)FFmpeg + SDL2.0简易播放
- android studio如何生成library project(库工程)
- java读取文本文件内容2
- 强制开启android webview debug模式使用Chrome inspect