안녕하세요.

안드로이드에서 와이파이가 연결되어 있으면 우선적으로 와이파이가 연결이 됩니다.
이를 강저제적으로 3g데이터망으로 연결을 할려고 합니다.

다음을 호출하여 강제적으로 3G 데이터 망으로 붙이고자 아래 함수를 호출 하고

ConnectivityManager mgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

NetworkInfo netInfo = mgr.getActiveNetworkInfo();

int result = mgr.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE, "enableHIPRI");

result = mgr.requestRouteToHost(5, convertIP(ip));


ConnectivityManager.CONNECTIVITY_ACTION    에 대한 브로드 캐스트에서  NetworkInfo를 읽어와서 UTMS가 CONNECTED 가 되었을 때 동작이 되도록 하였습니다.

그런데 이렇게 하여도 실제 데이터가 3G 망을 통하지 않고 와이파이를 통하여 전송이 됩니다.

코드상으로 브로드캐스트에 Connected가 오기를 기다리지 않고, 안테나 표시에 3g가 뜨는 것을 보고서 동작을 시키면 정상적으로 3g를 통해서 데이터가 오고 갑니다.

아무래도 Network info의 Connected 값 외에 확인 해야 하는 값이 존재하는 것 같은데, 어떤 값들이 있는지 경험해 보신 분들이 있으신지요?