-
Notifications
You must be signed in to change notification settings - Fork 29.6k
Description
FlutterDriver already supports taking a screenshot, but this screenshot is based on the Flutter engine's view of the world, and as a result, omits platform-views (views that are drawn and managed by the platform).
An example of platform views include:
- web-views, such as webview_flutter_android
- google maps, such as google_maps_flutter_android
- google ads, such as google_mobile_ads
Using a new API (e.g. nativeDriver.screenshot()), it should be possible to take a "native" screenshot, using whatever the platform provides. For example, on Android, this would likely be (a variation of) adb shell screencap, on iOS idevicescreenshot, and so on.
These screenshots will not be cropped, and may include system shell UI. The former will not be addressed at the moment, but the latter can be partially addressed by using a device's appropriate "demo mode" (sometimes called "immersive mode"), or otherwise trying to create a somewhat hermetic screenshot environment (to the best of our ability).
Platform screenshots will likely be opaque objects, because they will exist as a file on disk, not bytes.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status