パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v0.0.15

ed_screen_recorder

Flutter用の画面録画ツール。このプラグインには Android SDK 21+ および iOS 10+ が必要です。

AndroidiOS
30日間ダウンロード
110
いいね数
58
Pub ポイント
130

パッケージをインストール

flutter pub add ed_screen_recorder

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

ed_screen_recorder は、Android および iOS デバイスで画面録画機能を可能にする Flutter プラグインです。Android SDK 21+ および iOS 10+ をサポートしており、開発者がアプリ内でデバイスの画面をキャプチャできるようにします。プラグインは Flutter プロジェクトにシームレスに統合され、シンプルな API を通じて画面録画機能にアクセスできます。チュートリアル作成、デバッグツール、インタラクティブなアプリデモに最適です。

用途

  • アプリ内チュートリアル動画を作成する
  • スクリーンレコーディングによるアプリ動作のデバッグ
  • 教育用またはデモアプリの構築
  • 分析用にユーザーのインタラクションを記録する
  • 画面共有機能の開発

主な機能

  • クロスプラットフォーム対応(Android および iOS)
  • Flutter との簡単な統合
  • Android SDK 21+ および iOS 10+ をサポート
  • リアルタイムの画面キャプチャを有効にする
  • 軽量でコア機能に焦点を当てる

適している対象

  • スクリーンレコーディングが必要なアプリ開発者
  • 教育アプリ開発者
  • デバッグおよびテストツール
  • ユーザーオンボーディング機能ビルダー
  • インタラクティブなデモアプリケーション

注意事項

  • 両プラットフォームで適切な権限が必要です
  • 対応OSバージョンに限定
  • バックグラウンド録音には追加の設定が必要になる場合があります
  • 最適化されていない場合、高解像度または長時間の録画には向かない
  • ユーザー画面を記録する際のプライバシー上の配慮

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

ED Flutter Screen Recorder

Screen recorder plugin for Flutter. Supports IOS and Android devices.It does not work on the IOS emulator!!!!

Who made it? It's Eren ;)

pubdev

Ekler

android/app/build.gradle

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'com.github.HBiSoft:HBRecorder:3.0.1'
    implementation 'androidx.appcompat:appcompat:1.4.1'
}

android/app/src/main/AndroidManifest.xml

    xmlns:tools="http://schemas.android.com/tools"
    package="com.example">
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="28" tools:ignore="ScopedStorage" />
    <uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

You only need add the permission message on the Info.plist

  <key>NSPhotoLibraryUsageDescription</key>
	<string>Save video in gallery</string>
	<key>NSMicrophoneUsageDescription</key>
	<string>Save audio in video</string>

Usage/Examples

import 'package:screen_recorder/screen_recorder.dart';

ScreenRecorder? screenRecorder;
Map<String, dynamic>? _response;

@override
void initState() {
    super.initState();
    screenRecorder = ScreenRecorder();
}

  Future<void> startRecord({required String fileName}) async {
    // Directory tempDir = await getTemporaryDirectory();
    // String tempPath = tempDir.path;
    var response = await edScreenRecorder?.startRecordScreen(
      fileName: fileName,
      // `dirPathToSave` Optional. It will save the video there when you give the file path with whatever you want.
      //If you leave it blank, the Android operating system will save it to the gallery.
      dirPathToSave: tempPath,
      audioEnable: false,
    );

    setState(() {
      _response = response;
    });
  }

  Future<void> stopRecord() async {
    var response = await edScreenRecorder?.stopRecord();
    setState(() {
      _response = response;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text("Screen Recording Debug"),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Text("File: ${(_response?['file'] as File?)?.path}"),
            Text("Status: ${(_response?['success']).toString()}"),
            Text("Event: ${_response?['eventname']}"),
            Text("Progress: ${(_response?['progressing']).toString()}"),
            Text("Message: ${_response?['message']}"),
            Text("Video Hash: ${_response?['videohash']}"),
            Text("Start Date: ${(_response?['startdate']).toString()}"),
            Text("End Date: ${(_response?['enddate']).toString()}"),
            ElevatedButton(onPressed: () => startRecord(fileName: "eren"), child: const Text('START RECORD')),
            ElevatedButton(onPressed: () => stopRecord(), child: const Text('STOP RECORD')),
          ],
        ),
      ),
    );
  }

Resources used within the plugin

HBRecorder Lightweight screen and audio recording Android library. URL

Watcher

A file system watcher. URL

UUID

Simple, fast generation of RFC4122 UUIDs. URL

Contributors

Thanks my friends Mehmet for contributed.

Author: endmr11 "github"

Features

  • IOS operating system support. "check"
  • Custom File Path-Directory "check"
  • Custom Audio Record
  • Custom Video Frame
  • Code optimization.

Feedback

If you have any feedback, please contact us at erndemir.1@gmail.com.

カテゴリー

依存関係

依存関係一覧 1 件

ソースリポジトリ

このパッケージを使用しているプロジェクト

データはまだありません。