Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issues with new android build #3569

Open
johannesjo opened this issue Oct 11, 2024 · 12 comments
Open

Issues with new android build #3569

johannesjo opened this issue Oct 11, 2024 · 12 comments
Assignees
Labels

Comments

@johannesjo
Copy link
Owner

johannesjo commented Oct 11, 2024

Hey @jiongxuan ! I encountered some issues with the new build and was hoping you could help. After merging all the PRs and the repositories I did the following:

  1. executed npm run buildFrontend:stageWeb:unminified && npx cap sync
  2. in android studio I ran the build and deployed the app to the device with the default app_config.properties. The old version of the app was present with some data.

This resulted in the errors bellow.

I can reliably reproduce this for every restart and re-deployment of the app.

I had the suspicion that this has to do something with the previously installed service workers but uninstalling them as well as deleting all the data from chrome://inspect/#devices has no effect.

The issue is fixed by deploying and running the app once with LAUNCH_MODE=2 and ONLINE_SERVICE_IS_LOCAL=false. After that I can run the app with the default settings and all works fine.

Any clues what might cause that? Do you think this would affect users when deploying a new android app?

Devtools:
Screenshot from 2024-10-11 14-45-15

Logcat:

--------- beginning of main
--------- beginning of system
---------------------------- PROCESS STARTED (3389) for package com.superproductivity.superproductivity ----------------------------
2024-10-11 14:39:37.423  1750-2021  ResourcesManager        com.android.systemui                 E  failed to add asset path /data/app/com.superproductivity.superproductivity-8NXAcWdJ5aZwCekbnqeTlQ==/base.apk
2024-10-11 14:39:37.424  1750-2021  ResourcesManager        com.android.systemui                 E  failed to add asset path /data/app/com.superproductivity.superproductivity-8NXAcWdJ5aZwCekbnqeTlQ==/base.apk
2024-10-11 14:39:37.424  1750-2021  ResourcesManager        com.android.systemui                 E  failed to add asset path /data/app/com.superproductivity.superproductivity-8NXAcWdJ5aZwCekbnqeTlQ==/base.apk
2024-10-11 14:39:37.424  1750-2021  ResourcesManager        com.android.systemui                 E  failed to add asset path /data/app/com.superproductivity.superproductivity-8NXAcWdJ5aZwCekbnqeTlQ==/base.apk
2024-10-11 14:39:37.424  1750-2021  ResourcesManager        com.android.systemui                 E  failed to add asset path /data/app/com.superproductivity.superproductivity-8NXAcWdJ5aZwCekbnqeTlQ==/base.apk
2024-10-11 14:39:37.518  3389-3389  AppCompatDelegate       com...roductivity.superproductivity  D  Checking for metadata for AppLocalesMetadataHolderService : Service not found
2024-10-11 14:39:37.529  3389-3389  TW                      com...roductivity.superproductivity  V  FullScreenActivity: onCreate
2024-10-11 14:39:37.571  3389-3389  WebViewFactory          com...roductivity.superproductivity  I  Loading com.android.chrome version 61.0.3163.98 (code 316409812)
2024-10-11 14:39:37.573  3389-3389  zygote                  com...roductivity.superproductivity  I  The ClassLoaderContext is a special shared library.
2024-10-11 14:39:37.615  3389-3389  cr_LibraryLoader        com...roductivity.superproductivity  I  Time to load native libraries: 2 ms (timestamps 9409-9411)
2024-10-11 14:39:37.644  3389-3389  chromium                com...roductivity.superproductivity  I  [INFO:library_loader_hooks.cc(136)] Chromium logging enabled: level = 0, default verbosity = 0
2024-10-11 14:39:37.644  3389-3389  cr_LibraryLoader        com...roductivity.superproductivity  I  Expected native library version number "61.0.3163.98", actual native library version number "61.0.3163.98"
2024-10-11 14:39:37.694  3389-3427  cr_ChildProcLH          com...roductivity.superproductivity  W  Create a new ChildConnectionAllocator with package name = com.android.chrome, sandboxed = true
2024-10-11 14:39:37.857  3389-3389  cr_BrowserStartup       com...roductivity.superproductivity  I  Initializing chromium process, singleProcess=false
2024-10-11 14:39:37.973  3389-3389  <no-tag>                com...roductivity.superproductivity  D  HostConnection::get() New Host Connection established 0x88224000, tid 3389
2024-10-11 14:39:37.980  3389-3389  zygote                  com...roductivity.superproductivity  I  android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasWideColorDisplay retrieved: 0
2024-10-11 14:39:37.982  3389-3389  EGL_emulation           com...roductivity.superproductivity  D  eglCreateContext: 0x9b6b4820: maj 3 min 0 rcv 3
2024-10-11 14:39:37.983  3389-3389  EGL_emulation           com...roductivity.superproductivity  D  eglMakeCurrent: 0x9b6b4820: ver 3 0 (tinfo 0x8821c210)
2024-10-11 14:39:37.960  3389-3389  perproductivity         com...roductivity.superproductivity  W  type=1400 audit(0.0:9): avc: denied { read } for name="vmstat" dev="proc" ino=4026532038 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:proc:s0 tclass=file permissive=0
2024-10-11 14:39:38.339  3389-3427  cr_LibraryLoader        com...roductivity.superproductivity  I  Using linker: org.chromium.base.library_loader.ModernLinker
2024-10-11 14:39:38.343  3389-3463  cr_media                com...roductivity.superproductivity  W  Requires BLUETOOTH permission
2024-10-11 14:39:38.549  3389-3389  TW                      com...roductivity.superproductivity  V  FullScreenActivity: onResume
2024-10-11 14:39:38.565  3389-3505  OpenGLRenderer          com...roductivity.superproductivity  D  HWUI GL Pipeline
2024-10-11 14:39:38.584  3389-3389  Choreographer           com...roductivity.superproductivity  I  Skipped 66 frames!  The application may be doing too much work on its main thread.
2024-10-11 14:39:38.641  3389-3505  OpenGLRenderer          com...roductivity.superproductivity  I  Initialized EGL, version 1.4
2024-10-11 14:39:38.641  3389-3505  OpenGLRenderer          com...roductivity.superproductivity  D  Swap behavior 1
2024-10-11 14:39:38.641  3389-3505  <no-tag>                com...roductivity.superproductivity  D  HostConnection::get() New Host Connection established 0x866fb700, tid 3505
2024-10-11 14:39:38.642  3389-3505  OpenGLRenderer          com...roductivity.superproductivity  W  Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
2024-10-11 14:39:38.642  3389-3505  OpenGLRenderer          com...roductivity.superproductivity  D  Swap behavior 0
2024-10-11 14:39:38.644  3389-3505  EGL_emulation           com...roductivity.superproductivity  D  eglCreateContext: 0x8696a4e0: maj 3 min 0 rcv 3
2024-10-11 14:39:38.647  3389-3505  EGL_emulation           com...roductivity.superproductivity  D  eglMakeCurrent: 0x8696a4e0: ver 3 0 (tinfo 0x8691fa10)
2024-10-11 14:39:38.789  3389-3389  chromium                com...roductivity.superproductivity  W  [WARNING:ipc_message_attachment_set.cc(49)] MessageAttachmentSet destroyed with unconsumed attachments: 0/1
2024-10-11 14:39:38.790  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:38.803  3389-3505  EGL_emulation           com...roductivity.superproductivity  D  eglMakeCurrent: 0x8696a4e0: ver 3 0 (tinfo 0x8691fa10)
2024-10-11 14:39:38.922  3389-3505  EGL_emulation           com...roductivity.superproductivity  D  eglMakeCurrent: 0x8696a4e0: ver 3 0 (tinfo 0x8691fa10)
2024-10-11 14:39:38.996  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:38.997  3389-3505  EGL_emulation           com...roductivity.superproductivity  D  eglMakeCurrent: 0x8696a4e0: ver 3 0 (tinfo 0x8691fa10)
2024-10-11 14:39:39.067  3389-3525  cr_CrashFileManager     com...roductivity.superproductivity  W  /data/user/0/com.superproductivity.superproductivity/cache/WebView/Crash Reports does not exist or is not a directory
2024-10-11 14:39:39.214  3389-3536  <no-tag>                com...roductivity.superproductivity  D  HostConnection::get() New Host Connection established 0x831f5b80, tid 3536
2024-10-11 14:39:39.215  3389-3536  EGL_emulation           com...roductivity.superproductivity  D  eglCreateContext: 0x831e04a0: maj 3 min 0 rcv 3
2024-10-11 14:39:39.217  3389-3536  EGL_emulation           com...roductivity.superproductivity  D  eglMakeCurrent: 0x831e04a0: ver 3 0 (tinfo 0x86192e90)
2024-10-11 14:39:39.274  3389-3536  VideoCapabilities       com...roductivity.superproductivity  I  Unsupported profile 4 for video/mp4v-es
2024-10-11 14:39:39.279  3389-3536  cr_MediaCodecUtil       com...roductivity.superproductivity  W  HW encoder for video/avc is not available on this device.
2024-10-11 14:39:39.288  3389-3531  NetworkSecurityConfig   com...roductivity.superproductivity  D  Using Network Security Config from resource network_security_config debugBuild: true
2024-10-11 14:39:39.324  3389-3536  EGL_emulation           com...roductivity.superproductivity  D  eglCreateContext: 0x831e0fe0: maj 3 min 0 rcv 3
2024-10-11 14:39:39.326  3389-3536  EGL_emulation           com...roductivity.superproductivity  D  eglMakeCurrent: 0x831e0fe0: ver 3 0 (tinfo 0x86192e90)
2024-10-11 14:39:39.461  3389-3395  zygote                  com...roductivity.superproductivity  I  Do partial code cache collection, code=30KB, data=27KB
2024-10-11 14:39:39.461  3389-3395  zygote                  com...roductivity.superproductivity  I  After code cache collection, code=30KB, data=27KB
2024-10-11 14:39:39.461  3389-3395  zygote                  com...roductivity.superproductivity  I  Increasing code cache capacity to 128KB
2024-10-11 14:39:39.489  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.525  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.534  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.565  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.611  3389-3401  zygote                  com...roductivity.superproductivity  I  NativeAlloc concurrent copying GC freed 9392(533KB) AllocSpace objects, 0(0B) LOS objects, 50% free, 2MB/4MB, paused 231us total 127.533ms
2024-10-11 14:39:39.612  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.637  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.654  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.697  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.717  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.730  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.767  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.832  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.839  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.856  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.901  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.920  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:39.962  3389-3389  chatty                  com...roductivity.superproductivity  I  uid=10080(com.superproductivity.superproductivity) identical 2 lines
2024-10-11 14:39:40.018  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.149  3389-3401  zygote                  com...roductivity.superproductivity  I  NativeAlloc concurrent copying GC freed 13(31KB) AllocSpace objects, 0(0B) LOS objects, 49% free, 1996KB/3MB, paused 21.719ms total 108.520ms
2024-10-11 14:39:40.174  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.305  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.315  3389-3389  chromium                com...roductivity.superproductivity  I  [INFO:CONSOLE(1)] "Uncaught SyntaxError: Unexpected token {", source: https://app.super-productivity.com/polyfills-OXW65WWX.js (1)
2024-10-11 14:39:40.391  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.406  3389-3401  zygote                  com...roductivity.superproductivity  I  NativeAlloc concurrent copying GC freed 18(48KB) AllocSpace objects, 0(0B) LOS objects, 49% free, 2012KB/3MB, paused 330us total 205.782ms
2024-10-11 14:39:40.453  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.527  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.563  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.593  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.655  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.713  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.722  3389-3389  chromium                com...roductivity.superproductivity  I  [INFO:CONSOLE(1)] "Uncaught SyntaxError: Unexpected token =", source: https://app.super-productivity.com/main-DUZ4F2RX.js (1)
2024-10-11 14:39:40.792  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.847  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:40.915  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:41.183  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:41.387  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:41.429  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread
2024-10-11 14:39:41.464  3389-3389  zygote                  com...roductivity.superproductivity  W  Attempt to remove non-JNI local reference, dumping thread

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
____ ^ goes on endlessly with new messages ^  ____
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

@jiongxuan
Copy link
Contributor

jiongxuan commented Oct 11, 2024

Thanks for bringing this up!

For now, let’s hold off on releasing the new version until we’ve fully resolved this issue. I’ll work on verifying the problem and try to fix it as soon as possible.

Also, thank you for your thorough testing, and I appreciate your efforts to test it further.

(You can assign this bug to me)

@johannesjo
Copy link
Owner Author

johannesjo commented Oct 11, 2024

As a related question: Would it be alright to remove the isDebugBuild condition from the config.gradle in these lines:

    // Set the service host based on the build type and whether it's running locally
    def serviceHost = (serviceIsLocal == "true" && isDebugBuild) ? "10.0.2.2:4200" : appConfig.getProperty("ONLINE_SERVICE_HOST", "app.super-productivity.com")

    // Set the protocol based on the build type and whether it's running locally
    def serviceProtocol = (serviceIsLocal == "true" && isDebugBuild) ? "http" : appConfig.getProperty("ONLINE_SERVICE_PROTOCOL", "https")

or am I overlooking something?

As an update for the issue: I don't understand why but running on a different emulator (Pixel 6, API 30) does not resolve the issue on that particular device, but the error persists.

@jiongxuan
Copy link
Contributor

jiongxuan commented Oct 11, 2024

I tested the upgrade from the old version to the new one on both a Xiaomi 14 Pro and a Pixel 8 emulator, following the same steps, but I couldn’t reproduce the issue. In the old version, I specifically enabled WebDAV and confirmed via the Console that the Service Worker was loaded. After upgrading to the new version, I verified that the app was using the compatible URL (https://app.super-productivity.com), just like in your screenshots.

image

From the logs and screenshots, it appears that the compatible solution (https://app.super-productivity.com) is being loaded, but the issue might be related to a JavaScript parsing error, potentially caused by caching.

Since you’re upgrading from an older version, could you provide details about the exact version you upgraded from, what actions you took, and the steps after the upgrade? Having a complete reproduction flow would help me track down the issue more effectively.

Just to add, I tested this in both 5G and WiFi environments, and there were no network-related issues on my end.

@jiongxuan
Copy link
Contributor

jiongxuan commented Oct 11, 2024

I also wanted to share the steps I followed during my testing:

  1. Installed the Android version from two days ago (to avoid any signing issues, I checked out the old repository and ensured it was the same as the version from two days ago).
  2. Logged in using WebDAV to confirm that the Service Worker was functioning properly.
  3. Checked out the current repository.
  4. Ran npm run buildFrontend:stageWeb:unminified && npx cap sync.
  5. Opened Android Studio and ran the app directly (since the previous command generated a Debug build, I ran it in Debug mode as well).
  6. Opened the app again, and all functions worked as expected.

I’ll try using a Release build later, but I assume the result will be similar. Could you check if these steps align with yours?

@jiongxuan
Copy link
Contributor

Regarding your question about removing the isDebugBuild condition from config.gradle, my understanding is that this issue might not be directly related to that code. Here’s why:

  1. Previous Deployment: This particular logic has been deployed since last month, and there were no changes in this area during the current release. In the compatibility mode, the logic remains the same as before.

  2. Importance of the Condition: I wouldn’t recommend removing this section. It defines the scheme for the service based on the build type and environment (local or remote). If removed, it could revert back to the earlier state, where multiple modifications would need to be made in FullScreenActivity to ensure proper URL handling. This would increase the risk of inconsistencies.

That said, to be thorough, could you double-check the code changes just to ensure nothing else was unintentionally modified? It’s currently midnight here, so I’ll take a closer look at it tomorrow morning.

Also, feel free to provide any additional reproduction details and logs. It would help us narrow down the issue more effectively.

As a related question: Would it be alright to remove the isDebugBuild condition from the config.gradle in these lines:

    // Set the service host based on the build type and whether it's running locally
    def serviceHost = (serviceIsLocal == "true" && isDebugBuild) ? "10.0.2.2:4200" : appConfig.getProperty("ONLINE_SERVICE_HOST", "app.super-productivity.com")

    // Set the protocol based on the build type and whether it's running locally
    def serviceProtocol = (serviceIsLocal == "true" && isDebugBuild) ? "http" : appConfig.getProperty("ONLINE_SERVICE_PROTOCOL", "https")

or am I overlooking something?

As an update for the issue: I don't understand why but running on a different emulator (Pixel 6, API 30) does not resolve the issue on that particular device, but the error persists.

@jiongxuan
Copy link
Contributor

jiongxuan commented Oct 11, 2024

Maybe we can try a different approach.

Could you generate the FDroid Release APK (since you have the signing certificate, you’d need to generate it yourself) and then test it against the previous FDroid installation package? This way, we can at least confirm whether the final user-facing APK has the same issue.

If the final release package works fine and only the testing builds have the issue, I personally think we can proceed with the release. We can then analyze the issue in the test builds afterward.

This would ensure stability for end users while still allowing us to continue investigating. What do you think?

(One more thing: I suggest not using npm run buildFrontend:stageWeb:unminified to generate the release package, as this command is mainly for generating debug-related builds. I’ve been using npm run dist:android:prod to create, so you might want to try that as a reference.)

@johannesjo
Copy link
Owner Author

So I spend quite some time digging into this. The error has nothing to do with the changes you made, but depends on the webkit version. This interestingly seems to be completely independent from the android SDK version. My pixel 4 emulator with SDK29 had a newer webkit version than my pixel 6 emulator with SDK30.
For newer versions (Starting with 113.0.5672.136 and possibly earlier) there is no issue. For older versions there are problems, because we are using ES2022 and not all the new syntax is supported in older webkit versions.

So it's a web frontend issue :) Sorry for bothering you with this!!

Do you have by chance any knowledge of the market share of different webkit versions?

ChatGPT says:

Android 7.0 (Nougat) and above: Devices can use either the standalone WebView or the Chrome browser as the WebView implementation. This means the WebView version can be tied to the version of Chrome installed on the device.
Android 10 (Q) and above: The WebView component is updated more frequently and independently of the system updates, ensuring that users have the latest version with security patches.

If this is true this sounds like we should be fine for the most part and can just continue with the release. What do you think?

@jiongxuan
Copy link
Contributor

jiongxuan commented Oct 12, 2024

I’m glad we’ve pinpointed the root cause.

Trues be told, when I was reviewing the Logcat logs yesterday, I noticed these lines:

Loading com.android.chrome version 61.0.3163.98 (code 316409812)

[INFO:CONSOLE(1)] "Uncaught SyntaxError: Unexpected token {", source: https://app.super-productivity.com/polyfills-OXW65WWX.js (1)

Given my dev experience with mobile browsers, I suspected it could be a JSC/V8 version issue, especially since Chrome 61 is quite old (released in September 2017), that the underlying V8 engine in this version doesn’t support the newer JavaScript features introduced in ES2022.

However, since you mentioned the issue occurred after upgrading from an older version, I initially thought the older version was working fine and didn’t consider the WebKit angle further.Next time, I’ll be sure to include all potential causes—sorry for overlooking this!

In my experience working on large-scale apps, we have two main options:

  1. (Recommended) Using Babel to transpile the JavaScript to ES5/ES6 for broader compatibility.

  2. Bundling a Chromium WebView within the app, which is a common solution in large Chinese applications to solve compatibility issues.

That said, bundling Chromium isn’t really suitable for our project, so I’d strongly recommend focusing on Babel for compatibility.

Regarding WebKit version distribution, I don’t have recent global data (my latest is from 2019), and I’m more familiar with the Chinese market. However, I believe Babel transpilation should be sufficient to cover most cases.

Lastly, since WebView updates are now independent on most devices, I don’t think this will block the release. We can address the compatibility issue with Babel in future iterations.

What do you think? 😄

@johannesjo
Copy link
Owner Author

I agree with you. I added support for a bit older browser engines (chrome 83, which came out in 2020). I think most android users should have a newer version installed anyway, so maybe in the future we can ditch this completely.

I will try to make a new release now so we can test this out!

@jiongxuan
Copy link
Contributor

Sounds good! Looking forward to testing the new release.

@johannesjo
Copy link
Owner Author

I made a release for 10% of the android users just now. Fingers crossed that all goes well! :)

@jiongxuan
Copy link
Contributor

To be honest, currently these 10% or more users are only using the compatibility mode. The real challenge lies with those new users who will directly use the brand new Connectivity-Free mode.

Let's keep praying for continuous smoothness! 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants