startScreenCapture abstract method

Future<void> startScreenCapture(
  1. ScreenCaptureParameters2 captureParams
)

开始屏幕采集。

该方法仅适用于 Android 和 iOS 平台。 屏幕共享流的计费标准以 ScreenVideoParameters 中的 dimensions 值为准: 当你未传值时,以 1280 × 720 计费。 当你传值时,以你传入的值计费。 在 iOS 平台上,屏幕共享仅适用于 iOS 12.0 及以上。 在 iOS 平台上,如果你使用音频自采集而非 SDK 采集音频,为避免应用退后台后屏幕共享停止,建议你对应用添加保活处理逻辑。 在 iOS 平台上,该功能对设备性能要求较高,建议你在 iPhone X 及之后机型上使用。 在 iOS 平台上,该方法依赖于屏幕共享动态库 AgoraReplayKitExtension.xcframework ,如果删除该动态库会导致无法正常开启屏幕共享。 在 Android 平台上,如果用户未授予 App 屏幕采集权限,SDK 会上报 onPermissionError(2) 回调。 在 Android 9 及之后版本上,为避免应用退后台后被系统杀死,建议你在 /app/Manifests/AndroidManifest.xml 文件中添加前台服务权限: android.permission.FOREGROUND_SERVICE 。 因 Android 性能限制,屏幕共享不支持 Android TV。 因 Android 系统限制,使用华为手机进行屏幕共享时,为避免崩溃,请不要在共享过程中调节屏幕共享流的视频编码分辨率。 因 Android 系统限制,部分小米手机不支持屏幕共享时采集系统音频。 为提高屏幕共享时采集系统音频的成功率,建议你在加入频道前通过 setAudioScenario 方法设置音频场景为 audioScenarioGameStreaming 。

  • captureParams 屏幕共享的编码参数配置。详见 ScreenCaptureParameters2 。

Returns 方法成功调用时,无返回值;方法调用失败时,会抛出 AgoraRtcException 异常,你需要捕获异常并进行处理。详见错误码了解详情和解决建议。

Implementation

Future<void> startScreenCapture(ScreenCaptureParameters2 captureParams);