1.项目需求
在12.0的项目定制化中,在一些wifi产品的机器中,对于系统4g部分的功能需要裁剪 比如拨打电话 接听电话 短信功能等这部分
需要禁用系统对应的功能,接下来就来初步分析下系统中拨打电话部分功能,然后实现禁用拨打电话功能
2.禁用和启用拨打电话功能实现的核心类
frameworks/base/telecomm/java/android/telecom/CallRedirectionService.java
frameworks/base/telecomm/java/android/telecom/TelecomManager.java
packages/services/Telecomm/src/com/android/server/telecom/TelecomServiceImpl.java
packages/services/Telecomm/src/com/android/server/telecom/callfiltering/BlockCheckerFilter.java
3.禁用和启用拨打电话功能实现的实现原理分析
3.1 TelecomManager.java中关于拨号流程的核心代码分析
/**
* Places a new outgoing call to the provided address using the system telecom service with
* the specified extras.
*
* This method is equivalent to placing an outgoing call using {@link Intent#ACTION_CALL},
* except that the outgoing call will always be sent via the system telecom service. If