Run Raptor Firefox on WebView on Fire TV
Categories
(Testing :: Raptor, enhancement, P3)
Tracking
(Not tracked)
People
(Reporter: whimboo, Unassigned)
Details
(Whiteboard: [blocked])
It would be great to get Raptor running on the Fire TV devices. Right now the main blocker is the missing WebExtensions support, which won't allow Raptor to work at all.
But also starting Firefox on the Fire TV doesn't work yet:
$ ./mach raptor-test --test raptor-speedometer --app=geckoview --binary="org.mozilla.tv.firefox"
It results in:
09:18:14 INFO - adb shell_output: adb -s G070VM0990350952 wait-for-device shell am start -W -n org.mozilla.tv.firefox/org.mozilla.tv.firefox.GeckoViewActivity -a android.intent.action.Main --ez use_multiprocess True --es args "-profile /sdcard/raptor/profile --es env0 LOG_VERBOSE=1 --es env1 R_LOG_LEVEL=6" -d about:blank; echo adb_returncode=$?, timeout: None, root: False, timedout: None, exitcode: 0, output: Starting: Intent { act=android.intent.action.Main dat=about:blank cmp=org.mozilla.tv.firefox/.GeckoViewActivity (has extras) }
09:18:14 INFO - Error type 3
09:18:14 INFO - Error: Activity class {org.mozilla.tv.firefox/org.mozilla.tv.firefox.GeckoViewActivity} does not exist.
The above failure can be solved when using MainActivity
here:
https://searchfox.org/mozilla-central/source/testing/raptor/raptor/cmdline.py#21
It would be good to find a way to dynamically retrieve the main activity without having to specify it in the configs.
Reporter | ||
Comment 1•6 years ago
|
||
Note that starting the app also works with the following command and no changes to Raptor:
$ ./mach raptor-test --test raptor-speedometer --app=geckoview --binary="org.mozilla.tv.firefox" --activity MainActivity
Reporter | ||
Comment 2•6 years ago
|
||
Also when starting the Firefox TV app the following items are blocking the UI:
- turbo mode selection (on/off)
- pocket introduction
Both might be able to turn off with setting custom preferences.
Updated•5 years ago
|
Reporter | ||
Comment 3•5 years ago
|
||
So Firefox on FireTV is based on WebView and not GeckoView. Does WebView support WebExtensions? When I queried for that I wasn't able to find any positive sign. As such I assume that this API is not supported, and as such Firefox on WebView won't ever allow us to support Raptor due to the missing web extension it currently required.
Nick, mind giving feedback?
Comment 4•5 years ago
|
||
(In reply to Henrik Skupin (:whimboo) [⌚️UTC+1] from comment #3)
So Firefox on FireTV is based on WebView and not GeckoView.
This is true now, but the team is working hard to convert to GV (in the wild).
Does WebView support WebExtensions? When I queried for that I wasn't able to find any positive sign. As such I assume that this API is not supported, and as such Firefox on WebView won't ever allow us to support Raptor due to the missing web extension it currently required.
No, WV doesn't support Web Extensions, and likely will never do so. So Raptor's current architecture will likely never support this.
However, I did the work required to make browsertime
target both WV- and GV-based Firefox TV as part of producing this report.
In particular, I added Intent arguments to control the settings you mention in #c2.
I am actively evolving the harness that drove browsertime
for that report into a mach command in Bug 1545627.
There were many details around proxies, certificates, and chromedriver
versions that aren't captured in upstream Firefox TV, so if you really want to drive WV-based Firefox TV in the way I did with browsertime
, be sure to talk to me to save some effort. I can rehabilitate some patches adding proxy support, etc.
Reporter | ||
Comment 5•5 years ago
|
||
Ok, great. Thank you for those detailed info. At least for our Q2 work as covered on bug 1539090, we are allowed to use the geckoview_example or refbrower applications, so this isn't actually a blocker anymore.
We may even wontfix this bug. Also because once Firefox will be based on GV, it should work out of the box. But this I want to leave up to Rob.
Comment 6•5 years ago
|
||
Thanks, yes I don't see us adding support for this to Raptor anytime soon.
Reporter | ||
Comment 7•5 years ago
|
||
Actually this is invalid because it can't simply be done due to no webextension support.
Description
•