diff options
| author | 2013-08-08 16:22:14 -0700 | |
|---|---|---|
| committer | 2013-08-08 16:22:14 -0700 | |
| commit | 280f6218a578b07f0dc56e403e4b686b8cbfe950 (patch) | |
| tree | 9c714f6ec1434af1de8ae3e04f8f238ca6f90fe8 | |
| parent | 5f055ea10947f32aba2c2033e0bd5cb689a25be6 (diff) | |
| parent | 81b1fa6fc62190d64a6b76b4a5ee7cc2bf3172ac (diff) | |
am 81b1fa6f: am 9b6363e5: am cbad1243: Merge "Check that hipri has started." into jb-mr2-dev
* commit '81b1fa6fc62190d64a6b76b4a5ee7cc2bf3172ac':
Check that hipri has started.
| -rw-r--r-- | services/java/com/android/server/ConnectivityService.java | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java index 3ae2eb542c9b..1f71471256da 100644 --- a/services/java/com/android/server/ConnectivityService.java +++ b/services/java/com/android/server/ConnectivityService.java @@ -3916,11 +3916,26 @@ public class ConnectivityService extends IConnectivityManager.Stub { // hipri connection so the default connection stays active. log("isMobileOk: start hipri url=" + params.mUrl); mCs.setEnableFailFastMobileData(DctConstants.ENABLED); - mCs.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE, - Phone.FEATURE_ENABLE_HIPRI, new Binder()); // Continue trying to connect until time has run out long endTime = SystemClock.elapsedRealtime() + params.mTimeOutMs; + + // First wait until we can start using hipri + Binder binder = new Binder(); + while(SystemClock.elapsedRealtime() < endTime) { + int ret = mCs.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE, + Phone.FEATURE_ENABLE_HIPRI, binder); + if ((ret == PhoneConstants.APN_ALREADY_ACTIVE) + || (ret == PhoneConstants.APN_REQUEST_STARTED)) { + log("isMobileOk: hipri started"); + break; + } + if (VDBG) log("isMobileOk: hipri not started yet"); + result = ConnectivityManager.CMP_RESULT_CODE_NO_CONNECTION; + sleep(1); + } + + // Continue trying to connect until time has run out while(SystemClock.elapsedRealtime() < endTime) { try { // Wait for hipri to connect. |