Record device's screen
npm install @capgo/capacitor-screen-recorder
The most complete doc is available here: https://capgo.app/docs/plugins/screen-recorder/
| Plugin version | Capacitor compatibility | Maintained |
| -------------- | ----------------------- | ---------- |
| v8.\.\ | v8.\.\ | ✅ |
| v7.\.\ | v7.\.\ | On demand |
| v6.\.\ | v6.\.\ | ❌ |
| v5.\.\ | v5.\.\ | ❌ |
> Note: The major version of this plugin follows the major version of Capacitor. Use the version that matches your Capacitor installation (e.g., plugin v8 for Capacitor 8). Only the latest major version is actively maintained.
``bash`
npm install @capgo/capacitor-screen-recorder
npx cap sync
add NSPhotoLibraryUsageDescription in your info.plist
Add these permissions in your AndroidManifest.xml:`xml`
`gradle`
allprojects {
repositories {
google()
mavenCentral()
maven { url 'https://jitpack.io/' }
}
}
This plugin will use the following project variables (defined in your app's variables.gradle file):$kotlinVersion
- version of org.jetbrains.kotlin:kotlin-stdlib-jdk7 (default: 1.7.21)
If you have compilation issue Duplicate class androidx.lifecycle.ViewModelLazy
i found in this the solution who worked for me:
https://stackoverflow.com/questions/73406969/duplicate-class-androidx-lifecycle-viewmodellazy-found-in-modules-lifecycle-view
Add this
``
configurations {
all {
exclude group: 'androidx.lifecycle', module: 'lifecycle-runtime-ktx'
exclude group: 'androidx.lifecycle', module: 'lifecycle-viewmodel-ktx'
}
}
anandroid/app/build.gradle
line 2 in file
No configuration required for this plugin.
* start(...)
* stop()
* getPluginVersion()
Capacitor Screen Recorder Plugin for recording the device screen.
Allows you to capture video recordings of the screen with optional audio.
`typescript`
start(options?: { recordAudio?: boolean | undefined; } | undefined) => Promise
Start recording the device screen.
Initiates screen recording with optional audio capture. The user will be
prompted to grant screen recording permissions if not already granted.
On iOS, the system recording UI will be displayed. On Android, the recording
starts immediately after permission is granted.
| Param | Type | Description |
| ------------- | --------------------------------------- | --------------------------------- |
| options | { recordAudio?: boolean; } | - Recording configuration options |
Since: 1.0.0
--------------------
`typescript`
stop() => Promise
Stop the current screen recording.
Stops the active screen recording and saves the video to the device's
camera roll or gallery. On iOS, the system will show a preview of the
recording. On Android, the video is saved directly to the gallery.
Since: 1.0.0
--------------------
`typescript``
getPluginVersion() => Promise<{ version: string; }>
Get the native Capacitor plugin version.
Returns: Promise<{ version: string; }>
Since: 1.0.0
--------------------