Towards the end of May, we started to receive a lot of reports from DEV users that our Android App was giving them an
Offline message even when they had an internet connection. Additional reports came in from users trying to access DEV articles from the Facebook in-app browser, the DuckDuckGo browser, and others. This alarmed us, and we immediately set to work to fix the problem. Days went by and we couldn't make any progress on mitigating the issue.
We simply couldn't reproduce the issue at all on my phone or on the emulator.
Since we use webviews within our Android app, this situation was not good for our Google Play Store reviews:
I tunneled-visioned myself into thinking that I could fix the problem if I could just replicate it myself. As soon as I was about to give up and ask for help, I found this bug report.
Starting towards the end of May we started receiving sporadic reader complaints that our app was reporting that certain functionality wasn't available due to the app being offline - when actually being online. We verify connectivity before certain actions by making a network request, and this was failing.
It turns out the bug was caused by an experiment they were conducting in Chrome 75. Depending on the device, WebView would be relying on Chrome 75 and because it is still an experiment, it can happen randomly. To put it simply, if
IoThreadClient is null, the web request is aborted, hence the immediate offline page. A soon as they found the cause, they patched it swiftly
Within that bug report, engineers from renowned publications such as LinkedIn and The Financial Times chimed in. They also maintain apps that rely on Service Workers and were similarly frustrated. These apps are collectively utilized by billions of customers and many were quite unhappy. It is an especially damaging bug because their apps did nothing wrong, and were getting hit by a lot of bad ratings and angry reviews.
There are some reports that the issue may still be going on for some, but shout out to the Chromium team for responding so quickly with a fix. The issue has not been closed conclusively but should be soon.
To those of you who might still be experiencing this problem, try clearing the storage/cache our app once or twice, and you should be able to access our app. It may produce a fix, and if not it should hopefully be 100% fixed soon.
It is a well-known fact that all human beings are different and unique in their ways. However, no matter how unique and different we are from one another, one thing which remains the same between all of us is our innate nature to commit mistakes.