|
|
Created:
6 years, 7 months ago by bolian Modified:
6 years, 7 months ago CC:
chromium-reviews, cbentzel+watch_chromium.org Base URL:
https://chromium.googlesource.com/chromium/src.git@master Visibility:
Public. |
DescriptionGetCurrentConnectionType (in NetworkChangeNotifier.java) gets actual connection type if the value is CONNECTION_UNKNOWN.
BUG=370292
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=269529
Patch Set 1 #
Total comments: 4
Patch Set 2 : addressed comments. #
Total comments: 4
Patch Set 3 : notify on initial connection type detection. #Patch Set 4 : . #Patch Set 5 : Always notify in updateCurrentConnectionType (like before). #Messages
Total messages: 32 (0 generated)
Hello, This CL makes getCurrentConnectionType try to get actual connection type when it is unknown. Thanks, Bolian
yfriedman->pliard
https://codereview.chromium.org/264973019/diff/1/net/android/java/src/org/chr... File net/android/java/src/org/chromium/net/NetworkChangeNotifier.java (right): https://codereview.chromium.org/264973019/diff/1/net/android/java/src/org/chr... net/android/java/src/org/chromium/net/NetworkChangeNotifier.java:80: if (mCurrentConnectionType == CONNECTION_UNKNOWN) { nit: CONNECTION_UNKNOW == mCurrentConnectionType https://codereview.chromium.org/264973019/diff/1/net/android/java/src/org/chr... File net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java (right): https://codereview.chromium.org/264973019/diff/1/net/android/java/src/org/chr... net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java:219: if (mObserver == null) { Why would mObserver sometimes be null?
https://codereview.chromium.org/264973019/diff/1/net/android/java/src/org/chr... File net/android/java/src/org/chromium/net/NetworkChangeNotifier.java (right): https://codereview.chromium.org/264973019/diff/1/net/android/java/src/org/chr... net/android/java/src/org/chromium/net/NetworkChangeNotifier.java:80: if (mCurrentConnectionType == CONNECTION_UNKNOWN) { On 2014/05/06 17:16:35, bengr1 wrote: > nit: CONNECTION_UNKNOW == mCurrentConnectionType Done. https://codereview.chromium.org/264973019/diff/1/net/android/java/src/org/chr... File net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java (right): https://codereview.chromium.org/264973019/diff/1/net/android/java/src/org/chr... net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java:219: if (mObserver == null) { When no observer is needed, as the way used by this CL in getCurrentConnectionType().
lgtm
Hi Philippe, Did you get a chance to look at this? We need this fix so that the histograms could log on the correct connection type. Thanks, Bolian
Thanks Bolian, and sorry for the delay. See me comment below :) Also, are you testing with Chrome or ChromeShell/ContentShell? I'm not sure we are initializing the Java-side of the NetworkChangeNotifier properly on non-Chrome targets. https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... File net/android/java/src/org/chromium/net/NetworkChangeNotifier.java (right): https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... net/android/java/src/org/chromium/net/NetworkChangeNotifier.java:81: NetworkChangeNotifierAutoDetect autoDetector = NetworkChangeNotifierAutoDetect can't be used on WebView since it requires an extra permission. Are you sure you are encountering the problem described in the bug? |mCurrentConnectionType| is set on line 143 which should happen early during initialization. It's not clear to me whether in your case |mCurrentConnectionType| is set to CONNECTION_UNKNOWN because the field has never be set or because we are failing to identify the return value of mConnectivityManagerDelegate.getNetworkType(). Can you reproduce the issue consistently?
Hi Philippe, Thanks for the reply. I was testing on Chrome, using my private build. https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... File net/android/java/src/org/chromium/net/NetworkChangeNotifier.java (right): https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... net/android/java/src/org/chromium/net/NetworkChangeNotifier.java:81: NetworkChangeNotifierAutoDetect autoDetector = I do see the problem consistently in my private Chrome build, in two phones. Given the permission problem, looks like I need to make sure setAutoDetectConnectivityState get called for Chrome. I will check why it did not happen for me.
https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... File net/android/java/src/org/chromium/net/NetworkChangeNotifier.java (right): https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... net/android/java/src/org/chromium/net/NetworkChangeNotifier.java:81: NetworkChangeNotifierAutoDetect autoDetector = On 2014/05/07 15:30:11, bolian wrote: > I do see the problem consistently in my private Chrome build, in two phones. > Given the permission problem, looks like I need to make sure > setAutoDetectConnectivityState get called for Chrome. I will check why it did > not happen for me. Thanks Bolian, also can you check whether setAutoDetectConnectivityStateInternal() is correctly called at startup?
Thanks, I think this will better fix it. ptal https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... File net/android/java/src/org/chromium/net/NetworkChangeNotifier.java (right): https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... net/android/java/src/org/chromium/net/NetworkChangeNotifier.java:81: NetworkChangeNotifierAutoDetect autoDetector = I think I know the problem now. NetworkChangeNotifierDelegateAndroid calls and caches getCurrentConnectionType before it is detected. I think we need to notify a connection type change when it is detected (i.e. change from unknown to some known type).
On 2014/05/07 21:03:57, bolian wrote: > Thanks, I think this will better fix it. ptal > > https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... > File net/android/java/src/org/chromium/net/NetworkChangeNotifier.java (right): > > https://codereview.chromium.org/264973019/diff/20001/net/android/java/src/org... > net/android/java/src/org/chromium/net/NetworkChangeNotifier.java:81: > NetworkChangeNotifierAutoDetect autoDetector = > I think I know the problem now. NetworkChangeNotifierDelegateAndroid calls and > caches getCurrentConnectionType before it is detected. I think we need to notify > a connection type change when it is detected (i.e. change from unknown to some > known type). Lgtm, thanks!
The CQ bit was checked by bolian@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/bolian@chromium.org/264973019/60001
FYI, CQ is re-trying this CL (attempt #1). Please consider checking whether the failures are real, and report flakes to chrome-troopers@google.com. The failing builders are: android_dbg_triggered_tests on tryserver.chromium win_chromium_rel on tryserver.chromium
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: android_dbg_triggered_tests on tryserver.chromium
The CQ bit was checked by bolian@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/bolian@chromium.org/264973019/60001
FYI, CQ is re-trying this CL (attempt #1). Please consider checking whether the failures are real, and report flakes to chrome-troopers@google.com. The failing builders are: android_dbg_triggered_tests on tryserver.chromium (http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered...)
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: android_dbg_triggered_tests on tryserver.chromium (http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered...)
The CQ bit was checked by bolian@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/bolian@chromium.org/264973019/60001
FYI, CQ is re-trying this CL (attempt #1). Please consider checking whether the failures are real, and report flakes to chrome-troopers@google.com. The failing builders are: android_dbg_triggered_tests on tryserver.chromium (http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered...)
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: android_dbg_triggered_tests on tryserver.chromium (http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered...)
The CQ bit was checked by bolian@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/bolian@chromium.org/264973019/60001
Looks like the expectation was the updateCurrentConnectionType should always notify observer even connection type is not change because other aspect of the network could have been change (e.g. WiFi SSD). So, I revert that part.
The CQ bit was checked by bolian@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/bolian@chromium.org/264973019/80001
Message was sent while issue was closed.
Change committed as 269529 |