For some reason, any ExtJS/Cordova apps built only show a white screen when running on a Google Pixel phone. Cordova was updated to the latest version and I'm currently using Ext JS 6.2.1.
Asked
Active
Viewed 387 times
1 Answers
3
Turns out the offending code was this little snippet in ExtJS. It became apparent when I did a test build and inspected the running code.
if (userAgent.match(/OPR/)) {
browserName = 'Opera';
browserMatch = userAgent.match(/OPR\/(\d+.\d+)/);
browserVersion = new Ext.Version(browserMatch[1]);
}
Google Pixel's user agent contains the string 'OPR', which is tricking Ext JS into thinking it's running in Opera. When this happens, the browserMatch variable is undefined and the app crashes. I've submitted the bug to Sencha and am waiting for a fix. This bug affects ExtJS 6.5.1 as well as 6.2.1.
Update: Sencha says they'll put a fix into the nightlies soon, and they'll eventually make it to a stable release. In the meantime, you can add a check for the browserMatch variable and do a rebuild of ExtJS to fix the problem. In the ExtJS source code, the issue is in Browser.js.

Steve W
- 1,062
- 1
- 9
- 24