Ashley's Forum Posts

  • I've asked for clarification but it sounds like some device's GPU drivers are slow, and WebView uses a different rendering approach that runs in to the slowness where the browser doesn't. This isn't the same as saying the webview will always be slower.

    AFAIK Chrome Custom Tabs show unavoidable browser UI, and you can already publish PWAs (web apps), but they don't appear in the Play Store.

    If there were better workarounds we'd look in to them. As far as I can tell though there aren't any which don't have even worse tradeoffs.

  • I guess it's initialising the engine. I've never seen it taking that long. By now we wouldn't make any changes other than for the C3 runtime though.

  • By far the best way to investigate this is reproduce it in a minimal public project that you're willing to share. You can just fill a project with dummy content so there's no need to share your artwork or anything. Otherwise we run in to all sorts of roadblocks - e.g. I don't think we can debug release APKs, and even if we could, the whole game is compiled with deliberate reverse-engineering protections (because people want them) making it a lot harder to figure out what's going on.

  • It looks like you're using an old C2 release, because the exported project still uses AppCache, which we removed in June. Is it better with the latest version?

  • I've no idea how it could take that long. Are you loading a huge amount of images on the first layout or something?

    If you want engine-level improvements to this, we've done a lot of work to improve both loading times and memory management in the new C3 runtime, so you'd have to update for that.

  • Problem is, there are some conditions on which the API calls are executed, like gameover.

    This still doesn't make sense - it's not a reason you can't use dependencies.

  • - that appears to be an unrelated issue, please file a bug report following all the guidelines to pursue that further.

    at09 - normally Google are more helpful; I've posted a comment to try to get a more detailed explanation. However you really are late to the party here - we've been through this, repeatedly, and at length, in the past already, and as best as we're aware, the majority of Android devices are working fine and we get relatively few complaints about it, especially with the latest fixes (e.g. this issue which got fixed for Chromium 67). In short, all the other workarounds were unreliable hacks, and even if the webview is slower, it's still better. The other "workarounds" were plagued by terrible issues: major features entirely missing; showstopper bugs like memory leaks or crashes that never got fixed; Crosswalk bloated the APK size by 17mb which a lot of people complained about; relying on third-parties who can shut down at any time; non-compliant features that complicate the codebase and significantly slow down development; limited features seriously impeding our ability to write and support new features; etc. etc. Even if webview isn't as fast, I am seriously glad to see the back of all those "workarounds". Slow and working is still better than fast and broken.

    The issue is frequently muddied by a range of other problems such as:

    - people disabling software updates and getting a slow, out-of-date system webview

    - buggy graphics drivers forcing software rendering (the alternative being crashes or game-ruining glitches, caused by the poor native tech, not the web tech)

    - inefficiently designed games e.g. consuming all the device's fillrate, then blaming the engine/device/browser

    - issues which only reproduce on some devices for some people, while other people with the same device cannot reproduce it

    - issues on devices which are too old to be supported by the vendor any more, so no updates are possible

    - lack of public data on the support of WebView vs. browser, making it difficult to objectively measure the extent of such issues

    In short it's very difficult to investigate, or even to get to the point where the cause of a problem is definitively known. It's still the best option for the long-term though: as mentioned any other option raises problems so much worse that they're hardly worth considering. We need to focus on getting the WebView to work as well as possible, since it's the only reasonable option.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Which version of Construct 3 are you using? If you press F12 to open the browser console were there any errors logged? If you reload C3 and try again does it work?

  • This is the Construct 2 bugs forum, it's the wrong place for Construct 3 issues. Please file such issues here following all the guidelines to ensure we can help.

  • The answer is actually pretty complicated: different behaviors update at different times, both before and after events run, both before and after relative to other behaviors and plugins, depending on the specific plugin or behavior. I also think it's something games should avoid deliberately depending on, since it's implicit and inconsistent across addons.

  • The first step to figure out what's going on is set up USB debugging and inspect it with Chrome and see if there are any errors logged in the console:

    https://developers.google.com/web/tools/chrome-devtools/remote-debugging/

  • This should be fixed in r264.

  • The vast majority of devices should work fine. These days Andriod devices have the browser engine built in to the system, and it updates with the latest Chrome browser. So make sure your device has any available software updates installed. If it still doesn't work very well, file an issue at crbug.com so Google can investigate it.

    Using the system default webview is by far the best solution and the goal should be to ensure that works robustly for everyone. Relying on hacky workarounds generally brings its own set of problems - often worse problems - and after long enough those hacks themselves break down, which I think people are discovering yet again. Modern web tech is very good and nobody should have any good reasons not to rely on it, but if there are still issues, let's focus on fixing them instead of resorting to the next round of crazy hacks that will inevitably fail in some other way later down the line.

  • Which URLs have you tried specifically? Some pages can block themselves from being shown in an iframe. So you can only choose pages that are allowed to be shown in an iframe. YouTube video embed URLs work fine though.

  • Most of the time games should run fine with the normal Cordova export. Poor performance is usually caused by a small number of devices that have buggy or broken graphics drivers that force the device to drop down to software rendering. There's not a lot that can be done about it, it's because the device has poor support for native OpenGL.