Chrome/Selenium: use-file-for-fake-video-capture not working anymore - google-chrome

I have automated ui-tests that test a web application in chrome using https://theintern.io/
The application offers a barcode scanner using the device camera (https://github.com/zxing/zxing).
To test this feature, a fake barcode is shown to the application, this has worked until chrome version 90/91 (not quite sure anymore).
Since this version I can not access the fake video anymore.
Chrome-options I have set:
use-fake-device-for-media-stream
use-fake-ui-for-media-stream
`use-file-for-fake-video-capture=${fakeVideoFilePath}`
I can reproduce this outside of the application if I use the chrome window configured with selenium and go to
https://webcamtests.com/
This loads forever - same thing happens inside the application.
The webcam name is the path to the video the camera is supposed to show.
Any hints on what is causing this problem or how it can be solved?
Thanks!

Fixed with Chrome 93.
After the update it is just working again.

Related

Minimum Chrome version for TWA - options?

I have a Trusted Web Activity app that is displaying a Progressive Web Application by using the Android Browser Helper. The documentation and code indicates that the mobile app only runs properly when the Chrome Browser is 72 or above. The address bar is visible when the Chrome Browser is outdated. I believe I have the option of a Webview-fallback but I prefer not to use Webview as some of the app's functionality is incompatible with Webview.
While testing, when the Chrome Browser is updated on the same device, the trusted web activity runs without any issues.
What options do I have where the address bar isn't visible?
Is the min SDK the only way to set the minimum browser requirements or can I explicitly set a min Chrome Browser version in the Play Console for the app before the user downloads it? (which prompts the user to update the browser before installation)
Thanks in advance!
It's not possible to set a browser version requirement on the Play Console.
Besides falling back to a WebView, or showing the application with the URL bar, the other solution would to block the application from loading and ask the user to update / install a browser that supports Trusted Web Activity.

Video is not playing in one iPad specifically

I am developing an app for iOS which includes a UIWebView which, among other this, contains a video (stored locally, in the same folder as some images which are being displayed correctly).
This works fine in my own iPad, but I have been given another one at work to install the app to and there it shows nothing more than the video controls. When I click on the play button nothing happens. The iPad is owned by the company so any security feature might be enabled.
I have researched quite a lot and I cannot find any reasons why the app may be working on one iPad and not on another one. I know it might be impossible to fix without having a passcode or something like that but I need to know at least which configuration might be the one that is making the app not to work.
Using WKWebView fixed it. UIWebView should not be used any longer unless it is specifically needed.
From Apple documentation:
In apps that run in iOS 8 and later, use the WKWebView class instead of using UIWebView. Additionally, consider setting the WKPreferences property javaScriptEnabled to false if you render files that are not supposed to run JavaScript.

Electron steals focus to Windows 10 Touch Keyboard and makes it unusable

I'm trying to run the attached project on Windows 10 Pro (latest version available without Windows Insider Program).
Basically it is a fullscreen browser window that navigate to http://www.google.com.
I configured Windows in Tablet mode, in order to let the touch keyboard popup whenever any text field in the page (in this case the query one) gets focused.
Then, I packaged the application with electron-windows-store in order to let electron work as Windows Store application.
When I start the application and Google home page is loaded I'm not able to use the touch keyboard, because it pops up but immediately disappears, like if electron tries to acquire again focus and causes touch keyboard disposal.
I tried also to disable fullscreen mode and setup frame coordinates in order to be as it was in fullscreen, but no success.
Any suggestion?
TestApp.zip
GitHub Repo
This seems to be related to an open issue on the Electron GitHub repository. You might have to wait for the Electron team to introduce this improvement.
I've managed it. The issue was caused by an old dependency to electron. Once updated it to the latest version I know (1.4.7) it all started working.

Silverlight Display Mixed Content crashes IE

So, I have an HTML page that includes a Silverlight xap file which plays a video. It works correctly while running locally and on our DEV environment when using Chrome or FF. The issue is when I am trying to view the video on our DEV environment using Internet Explorer. When doing so, it prompts me to Display Mixed Content. Whether I hit Yes or No, the browser crashes. I am able to go into my options and Enable Display Mixed Content, which fixes the issue and the video shows up correctly on the DEV environment using IE. But, this is not a good solution for a client facing site. Is there a way around this message to prevent it from crashing the browser?
A workaround for this is to use JavaScript to open the HTML page that contains the video in a new window. The user will still be prompted to Display Mixed Content, but it will not crash the browser and the video will play.

Chrome 32 - Tab opened with chrome extension doesn't render plug-in correctly

We have a Chrome extension that can be used to open a page into our website. From there the user then continues onto the next page which has a custom NPAPI plug-in embedded in it. This has always worked fine. However, since the version 32 update the plug-in loads and runs (it's a video conferencing plug-in and is clearly running as the other side can see video) however it doesn't show up on the page. Examining the DOM everything looks fine. Grabbing the border and re-sizing the browser will cause the plug-in to suddenly render correctly. I've tried all manner of javascript/css tricks to try and mimic this behavior as a workaround but nothing works. Tabs opened manually (not using chrome.tabs.create) work fine.
This worked up till 32.
Any ideas around this?
Chrome 32 is phasing out NPAPI, read the announcement here.
There is a deprecation guide that you can read here.
It seems like Google wants you to use it's Native Client tech to run native compiled code on user's machines. It is cool stuff...but so far I've found it difficult/more limiting to work with when compared to NPAPI (but there are obvious upsides, security for instance).
You could also build a native app and use native message passing to communicate from extension -> app. Once downside to this is that there is currently no way to bundle a native app into an extension install, so the user will need to download and install your app separately.