vilte/vowifi
vendor/mediatek/proprietary/packages/services/Ims/src/com/mediatek/ims/ImsService.java
¦ ¦ ¦ ¦ ¦ ¦ volteRes = res.getBoolean(
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ com.android.internal.R.bool.config_device_volte_available);
¦ ¦ ¦ ¦ ¦ ¦ vilteRes = res.getBoolean(
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ com.android.internal.R.bool.config_device_vt_available);
¦ ¦ ¦ ¦ ¦ ¦ wfcRes = res.getBoolean(
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ com.android.internal.R.bool.config_device_wfc_ims_available);
¦ ¦ ¦ ¦ ¦ } else {
¦ ¦ ¦ ¦ ¦ ¦ // For test SIM cards, forece enable all IMS functions for lab event.
¦ ¦ ¦ ¦ ¦ ¦ Rlog.w(LOG_TAG, "Found test SIM on phone " + phoneId);
¦ ¦ ¦ ¦ ¦ ¦ volteRes = true;
¦ ¦ ¦ ¦ ¦ ¦ vilteRes = true;
¦ ¦ ¦ ¦ ¦ ¦ wfcRes = true;
¦ ¦ ¦ ¦ ¦ } ¦ ¦ ¦ ¦ ¦ Rlog.w(LOG_TAG, "Set volte capability is " + volteRes);
¦ ¦ ¦ ¦ ¦ Rlog.w(LOG_TAG, "Set vilte capability is " + vilteRes);
¦ ¦ ¦ ¦ ¦ Rlog.w(LOG_TAG, "Set wfc capability is " + wfcRes);
--
从log:
1457 1457 D ImsManager: vilte resource value is true, system property is 1, Carrier value is true
在:frameworks/opt/net/ims/src/java/com/android/ims/ImsManager.java中:
¦ String carrier = CarrierConfigManager.KEY_CARRIER_VT_AVAILABLE_BOOL;
¦ boolean isResOverlaySupport = true;
¦ isResOverlaySupport = getIsResOverlaySupport(context, ImsConfig.FeatureConstants.FEATURE_TYPE_VIDEO_OVER_LTE);
¦ log("vilte resource value is "
¦ ¦ + isResOverlaySupport + ", system property is " + SystemProperties.getInt("ro.mtk_vilte_support", )
¦ ¦ + ", Carrier value is " + getBooleanCarrierConfig(context, carrier));
--
private static boolean getIsResOverlaySupport(Context context, int feature) {
¦ int mainPhoneId = getMainCapabilityPhoneId(context);
¦ boolean isResOverlaySupport = true;
¦ log("MainCapabilityPhoneId is " + mainPhoneId + " on feature " + feature);
¦ if (SystemProperties.get("persist.mtk_dynamic_ims_switch").equals("")) {
¦ ¦ try {
¦ ¦ ¦ ImsConfig configInstance = getConfigInterface(mainPhoneId, null, context);
¦ ¦ ¦ if (configInstance != null) {
¦ ¦ ¦ ¦ isResOverlaySupport = configInstance.getImsCapability(feature);
¦ ¦ ¦ }
¦ ¦ } catch (ImsException e) {
¦ ¦ ¦ log("Get volte capability - fail: " + e);
¦ ¦ }
¦ }
在:device/mediatek/common/device.mk中:
PRODUCT_PROPERTY_OVERRIDES += persist.mtk_dynamic_ims_switch=1
;
----
vilte/vowifi的更多相关文章
- Android 7.0 IMS框架详解
本文主要讲解IP Multimedia Subsystem (IMS)在Android 7.0上由谷歌Android实现的部分内容.从APP侧一直到Telephony Framework,是不区分CS ...
- VoLTE的前世今生...说清楚VoIP、VoLTE、CSFB、VoWiFi、SIP、IMS那些事...
转:https://mp.weixin.qq.com/s?__biz=MzA3MTA3OTIwMw==&mid=401344844&idx=1&sn=497b351f524af ...
- OpenStack 企业私有云的若干需求(7):电信行业解决方案 NFV
自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云(Hybrid cloud)支持 主流硬件支持.云快速交付 ...
- svg矢量图绘制以及转换为Android可用的VectorDrawable资源
项目需要 要在快速设置面板里显示一个VoWiFi图标(为了能够区分出来图形,我把透明的背景填充为黑色了) 由于普通图片放大后容易失真,这里我们最好用矢量图(SVG(Scalable Vector Gr ...
- 移动通信最先进的音频编解码器EVS及用好要做的工作
语音通信从最初的只有有线通信变成后来的有线通信与无线通信(移动通信)的竞争,当移动语音通信价格下来后有线语音通信明显处于逆势.如今移动语音通信的竞争对手是OTT(On The Top)语音,OTT语音 ...
- WebRTC的拥塞控制技术<转>
转载地址:http://www.jianshu.com/p/9061b6d0a901 1. 概述 对于共享网络资源的各类应用来说,拥塞控制技术的使用有利于提高带宽利用率,同时也使得终端用户在使用网络时 ...
- Android8.1 MTK平台 SystemUI源码分析之 网络信号栏显示刷新
SystemUI系列文章 Android8.1 MTK平台 SystemUI源码分析之 Notification流程 Android8.1 MTK平台 SystemUI源码分析之 电池时钟刷新 And ...
- 5G 与 MEC 边缘计算
目录 文章目录 目录 前言 参考文献 通信网络 核心网演进之路 早古时期 2G 网络架构 3G 网络架构 4G 网络架构 5G 5G 网络的需求 5G 网络架构的设计原则 5G 网络的逻辑架构 5G ...
- sip会话流程以及sip介绍(3)
1.mtk_ims_mo_sip报文交互流程 log: 步骤1:ATD触发MO呼叫尝试步骤2:VDM选择ADS到IMS.步骤3:触发VoLTE UA来设置MO调用.步骤4:SIP信息到P-CSCF进行 ...
随机推荐
- Leetcode: Palindrome Pairs
Given a list of unique words, find all pairs of distinct indices (i, j) in the given list, so that t ...
- POJ 1286 Necklace of Beads(Polya原理)
Description Beads of red, blue or green colors are connected together into a circular necklace of n ...
- bzoj4238 电压
首先先直接对图进行二染色,dfs染完色后,有的边为搜索树边,有的为非树边,当非树边连接的两头的点为异色的时候,那么很明显这条非树边和树边构成的环上的边必然不可能成为答案:如果非树边的两端的点同色,那么 ...
- u盘安装centos
1. 下载centos系统2. 使用UltraISO制作u盘启动.制作方法:http://jingyan.baidu.com/article/a378c960630e61b329283045.html ...
- 夺命雷公狗ThinkPHP项目之----企业网站15之文章删除的完成(单个)
我们文章最后一步就到他的删除了,这个其实是最简单的一个,废话不多说,先来写控制器: public function del(){ $id = I('ar_id'); if(M('Article')-& ...
- 动态时间规整(DTW) 转载
Dynamic Time Warping(DTW)诞生有一定的历史了(日本学者Itakura提出),它出现的目的也比较单纯,是一种衡量两个长度不同的时间序列的相似度的方法.应用也比较广,主要是在模板匹 ...
- archlinux 网络配置
https://wiki.archlinux.org/index.php/Network_configuration_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%2 ...
- yii2 render和renderPartial区别
1.render()方法使用到项目中的布局layout,renderPartial()不使用布局
- 查找(AVL平衡二叉树)
[1]为什么需要平衡二叉树? 矛盾是推进事物向前发展的源动力. 那么平衡二叉树是从哪里来?肯定是有矛盾存在的.请看程来师的分析: [2]什么是平衡二叉树? 平衡二叉树的基本认识: [3]平衡二叉树的构 ...
- datasnap 的线程池(转)
datasnap的线程池 新的datasnap使用INDY10的线程池.不管你知不知道,DATASNAP都是使用线程池了,这和MIDAS不同,MIDAS默认是没有线程池的. 跟踪INDY10线程池类T ...