viv icon indicating copy to clipboard operation
viv copied to clipboard

Viv Doesn’t Load in Twitter’s Browser

Open ilan-gold opened this issue 4 years ago • 5 comments

I'm on an iPhone7 and Viv (including the WebGL2-specific 3D stuff with the setting turned on) works on my browsers but not on Twitter's browser. I noticed this opening Vizarr from this tweet:

https://twitter.com/idrnews/status/1340011718886514695?s=21

@manzt is this you experience? I wonder if we can browser-sniff the twitter browser, and if other embedded browsers have issues

ilan-gold avatar Dec 19 '20 15:12 ilan-gold

The vizarr link works on my new phone (iPhone 12 mini). It did previously on my iPhone 7 as well (but I have since exchanged that phone and can no longer test). I've tried to look into what browser is used in-app, and are you certain it's a special browser and not the phone default browser? Odd that it is working on my phone. Ultimately I think there are too many variables here given the information we have.

I wonder if we can browser-sniff the twitter browser, and if other embedded browsers have issues

And do what with this information? The surface area of browsers is vast, and I'd rather try to use feature detection for the specific things that are unsupported and not just blanket "we think these browsers don't work". We made this change originally in Viv, switching from detecting safari to detecting the feature that we needed (WebGL2). It requires that we fully understand what features we rely on.

In the end, I think this high-level detection is best suited at the application level (e.g. Avivator), where on page load you can run some JS and create a message to the user (in HMTL + CSS) if needed. It doesn't really make sense for Viv itself, that doesn't have a UI, unless we created a helper function (e.g. canUseViv()) and the application can choose what to do with that information.

Again, my hesitation to adding to the library is that it adds to more things we need to maintain and things users will begin to rely on. I remember reading something a while ago about how any part of your API that you make public people will start to rely on. I think we've already seen that with the omexml issue.

manzt avatar Dec 19 '20 16:12 manzt

It works for me iPhone SE (the old SE that looks like iPhone 5) iOS 14.2 in both safari and the twitter browser

keller-mark avatar Dec 19 '20 18:12 keller-mark

This issue is isolated, clearly, then to my iphone7 ios14.2

ilan-gold avatar Dec 22 '20 18:12 ilan-gold

I think the issue from the blog is that you could be looking at a plate example, which takes a long time to load.

manzt avatar Dec 29 '20 18:12 manzt

I checked Avivator as well and it also does not work.

ilan-gold avatar Dec 29 '20 20:12 ilan-gold