MediaProjectionManager.GetMediaProjection(Int32, Intent) 方法

定义

MediaProjection检索从成功的屏幕捕获请求获取的屏幕截图。

[Android.Runtime.Register("getMediaProjection", "(ILandroid/content/Intent;)Landroid/media/projection/MediaProjection;", "")]
public Android.Media.Projection.MediaProjection? GetMediaProjection (int resultCode, Android.Content.Intent resultData);
[<Android.Runtime.Register("getMediaProjection", "(ILandroid/content/Intent;)Landroid/media/projection/MediaProjection;", "")>]
member this.GetMediaProjection : int * Android.Content.Intent -> Android.Media.Projection.MediaProjection

参数

resultCode
Int32

来自 .. 的结果代码Activity#onActivityResult(int, int, Intent) onActivityResult(int, int, Intent)

resultData
Intent

来自 .. 的结果数据Activity#onActivityResult(int, int, Intent) onActivityResult(int, int, Intent)

返回

从成功的屏幕捕获请求获取的媒体投影;如果屏幕捕获请求的结果不是 Activity#RESULT_OK RESULT_OK,则为 null。

属性

注解

MediaProjection检索从成功的屏幕捕获请求获取的屏幕截图。 请求的结果代码和数据通过重写来提供,该代码 Activity#onActivityResult(int, int, Intent) onActivityResult(int, int, Intent)在启动 #createScreenCaptureIntent()活动后调用。

从 Android android.os.Build.VERSION_CODES#R R开始,如果应用程序请求 android.Manifest.permission#SYSTEM_ALERT_WINDOW SYSTEM_ALERT_WINDOW 权限,并且用户尚未显式拒绝该权限,则在停止投影之前,将自动授予该权限。 该权限允许应用在捕获的屏幕顶部显示用户控件。

面向 SDK 版本 android.os.Build.VERSION_CODES#Q Q 或更高版本的应用必须在运行前台服务时调用 getMediaProjection 和维护捕获会话(MediaProjection#createVirtualDisplay(String, int, int, int, int, Surface, android.hardware.display.VirtualDisplay.Callback, Handler) MediaProjection#createVirtualDisplay)。 应用必须在 c>& 中<将属性设置为android.R.attr#foregroundServiceType foregroundServiceType android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTIONlt;service&燃气轮机;<应用清单文件的 /c> 元素。

对于面向 SDK 版本 android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE U 或更高版本的应用,用户必须先向应用授予启动投影的权限,然后应用才能使用类型 android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION启动前台服务。 此外,应用必须已使用该类型启动前台服务,然后再在此处调用此 API,否则它将从此 API 调用接收, SecurityException 除非它是特权应用。 应用可以通过和Activity#startActivityForResult(Intent, int)(或类似 API)请求权限#createScreenCaptureIntent()

适用于 . 的 android.media.projection.MediaProjectionManager.getMediaProjection(int, android.content.Intent)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于