搜索插件、代码仓与 APP 分类

插件详情v0.0.8

device_screenshot

一个 Flutter 插件,可帮助您截取整个设备的屏幕截图。

Android
近 30 天下载
61
喜欢数
9
Pub 分数
150

安装插件

flutter pub add device_screenshot

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

device_screenshot 包是一个专为 Flutter 设计的插件,用于在 Android 上捕获整个设备屏幕的截图。它使开发者能够以编程方式拍摄完整的设备屏幕截图,适用于测试、调试或生成视觉报告。该插件可无缝集成到 Flutter 应用中,除了标准配置外,无需额外的原生代码设置。它支持 Android 平台,非常适合需要视觉验证或自动截图生成的场景。

适合场景

  • 自动化UI测试
  • 调试视觉问题
  • 生成应用预览
  • 创建视觉文档
  • 录音应用程序状态

主要特点

  • 捕获整个设备屏幕
  • 仅限 Android 支持
  • 简单的 API 集成
  • 无需原生代码
  • 在后台运行

适合对象

  • 测试自动化工程师
  • UI/UX 开发人员
  • 应用调试器
  • 文档创建者
  • 质量保证团队

使用建议

  • 仅限 Android 平台
  • 需要运行时权限
  • 可能无法在所有设备上正常工作
  • 捕获期间可能产生的性能影响
  • 不适用于 iOS 开发

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

Device Screenshot Banner

Device Screenshot

💡 Overview

A Flutter plugin that can helps you to take screenshot your overall device using media projection and foreground service.

The plugin currently supports Android only and doesn't support IOS because the feature of media projection is not available there

💻 Usage

First, add device_screenshot as a dependency in your pubspec.yaml file.

dependencies:
  flutter:
    sdk: flutter

  device_screenshot: ^update_version

Don't forget to flutter pub get.

🔧 Setup

Set the minimum SDK version to 21 or higher in your android/app/build.gradle file:

android {
    defaultConfig {
        ...
        minSdkVersion 21 // Set this to 21 or higher
        ...
    }
}
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="...">
  ...

  <application
        ...
        ...>

        <activity
            ...
            ...>

        <!--Add this-->
        <service
            android:name="com.flutter.device_screenshot.src.MediaProjectionService"
            android:enabled="true"
            android:exported="false"
            android:foregroundServiceType="mediaProjection"
            android:permission="TODO"
            android:stopWithTask="false"
            />
        <!--end-->

        ...
  ...
  </application>
</manifest>

Import the package:

import 'package:device_screenshot/device_screenshot.dart';

Use the singleton instance of DeviceScreenshot to access all the available methods, for example:

DeviceScreenshot.instance.checkMediaProjectionService()

📱 To take screenshot

At first you need to run foreground service and for this

DeviceScreenshot.instance.requestMediaProjection()

Now you are ready to take your Device Screenshot.

Uri? uri = await DeviceScreenshot.instance.takeScreenshot()

所属分类

依赖

依赖清单 1 项

  • plugin_platform_interface^2.0.2

源码仓库

使用此插件的项目

暂无相关数据。