1


在 GSM 设备上,如果 wifi 开启,则可以强制使用数据网络,但在 CDMA 设备上,它会失败。

public boolean isMobileHighPriorityUP() {
        ConnectivityManager connMgr = (ConnectivityManager) mCxt.getSystemService(Context.CONNECTIVITY_SERVICE);
        State mobileHigh = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE_HIPRI).getState();
        Log.d(TAG, "--------- Network HIPRI State --------" + mobileHigh);
        if(mobileHigh == State.CONNECTED){
            return true;
        }
        return false;
    }


上面总是在 CDMA 上返回 false,但在 GSM 上返回 true.. 在电话接口固件代码上
找到enableHIPRI here。
假设Phonebase用于 GSM,而 CDMAPhonebase用于扩展 PhoneBase 的 CDMA。
找不到有关上述固件代码和code1 code2的太多信息。
CDMA固件是否应用了其他设计?你们能在这里阐明一下吗?
谢谢尼兹
_

4

1 回答 1

1
int resultInt = connMgr.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE, "enableHIPRI");

如果设备不支持 HiPri,则返回 -1;您必须通过关闭 wifi 来强制 3g / 4g 连接(完成后将其恢复到以前的状态)。

不记得是否所有 CDMA 设备都不支持 HiPri,但它可能是您正在测试的设备?

于 2014-02-03T13:13:29.117 回答