2014-01-31 3 views
1
.

.
На устройствах GSM, способных к force в сети передачи данных, если Wi-Fi включен, но на устройствах CDMA он не работает.Android: принудительное подключение к сети передачи данных, если Wi-Fi включен. Работы по 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 правда ..
Найдено enableHIPRI здесь на телефоне код интерфейса прошивки.
Предполагая, что Phonebase используется для GSM, а CDMAPhonebase используется для CDMA, который расширяет PhoneBase.
Не удалось найти много информации о прошивках выше и code1code2.
Есть ли в прошивке CDMA какой-то другой дизайн? Можете ли вы, ребята, проливать свет здесь?
Благодаря
NITZ

ответ

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

Вернется -1, если устройство не поддерживает HiPri; вы должны вернуться к форсированию соединения 3g/4g, отключив Wi-Fi (и вернув его в прежнее состояние, как только закончите).

Не помню, не все ли устройства CDMA не поддерживают HiPri, но это может быть устройство, на котором вы тестируете?

+0

resultInt значение может быть -1 (вернется к этому), хотите узнать причину того же, почему он не работает на CDMA. «Отключение Wi-Fi (и возвращение его в прежнее состояние после завершения) . «Я не могу сделать это, поскольку я выступаю против действия пользователя. Пожалуйста, переместите это в раздел комментариев. – NitZRobotKoder

 Смежные вопросы

  • Нет связанных вопросов^_^