2014-01-31 59 views
1


在GSM設備上能夠force在數據網絡上如果wifi開啓,但在CDMA設備上它失敗。Android:強制數據網絡如果Wifi on.Work on GSM失敗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但GSM真正返回false ..
找到enableHIPRI這裏電話界面固件代碼。
假設Phonebase用於GSM,並且CDMAPhonebase用於擴展PhoneBase的CDMA。
找不到關於上述固件代碼和code1code2的更多信息。
CDMA固件是否應用了其他一些設計?您可以在這裏投射一些光。
感謝
尼茨

回答

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

將返回-1,如果設備不支持HiPri;你必須通過關閉wifi來強制關閉3g/4g連接(並在完成後將其恢復到之前的狀態)。

不記得所有CDMA設備是否都不支持HiPri,但它可能是您正在測試的設備?

+0

resultInt值可能是-1(將回到此),想知道爲什麼它在CDMA上失敗的原因。「關閉wifi(並在完成後將其返回到之前的狀態) 「我不能這樣做,因爲我反對用戶行爲。請將其移至評論部分。 – NitZRobotKoder

相關問題