微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > 打开/关闭RDS方法

打开/关闭RDS方法

时间:10-02 整理:3721RD 点击:
[DESCRIPTION]
如何打开/关闭RDS
[SOLUTION]
目前没有宏来切换RDS的开启与关闭,如果需要修改的话必须通过修改代码来完成。具体如下:
1、Fmradioservice在启动过程中会调用isRDSSupported()从而调用native 层的isRDSsupport()来获取RDS的开关状
态,如下代码片段:
public boolean isRDSSupported() {
boolean isRDSSupported = (FMRadioNative.isRDSsupport() == 1);
LogUtils.d(TAG, "FMRadioService.isRDSSupported: " + isRDSSupported);
return isRDSSupported;
}直接修改上层APK上的接口isRDSSupported即可。
2、Natvie 层isRDSsupport()会调用drivr端的设定,如下:
case FM_IOCTL_RDS_SUPPORT: {
fm_s32 support = FM_RDS_ENABLE;
WCN_DBG(FM_NTC | MAIN, "FM_IOCTL_RDS_SUPPORT\n");
if (copy_to_user((void*)arg, &support, sizeof(fm_s32))) {
ret = -EFAULT;
goto out;
}
break;
由上面这段代码可以看到driver端默认RDS为打开状态。
通过以上的描述可以看到,打开/关闭 RDS有两种方式:
方法一:在Fmradioservice --> isRDSSupported 中直接将变量isRDSSupported值修改掉。0:关闭RDS,1:打开RDS
方法二: 修改driver端的设定,即native层将case FM_IOCTL_RDS_SUPPORT中fm_s32 support = FM_RDS_ENABLE值改掉
, 0:关闭RDS, 1:打开RDS

谢谢分享

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top