我一直在阅读 MediaProjection API,并在 Github 上查看了一些示例项目,展示了如何使用它。
所有这些项目只展示了如何将屏幕截图保存在文件中(记录屏幕),而没有显示将其实时传输到另一台设备(截屏)。
我不确定这是否可以通过此 API 实现,但后来我阅读了文档:
截屏和分享
Android 5.0 允许您使用新的 android.media.projection API 为您的应用添加屏幕捕获和屏幕共享功能。此功能很有用,例如,如果您想在视频会议应用程序中启用屏幕共享。
新的createVirtualDisplay()方法允许您的应用程序将主屏幕(默认显示)的内容捕获到 Surface 对象中,然后您的应用程序可以通过网络发送该对象。该 API 仅允许捕获非安全屏幕内容,而不是系统音频。要开始截屏,您的应用必须首先通过使用通过 createScreenCaptureIntent() 方法获得的 Intent 启动截屏对话框来请求用户的许可。
有关如何使用新 API 的示例,请参阅示例项目中的 MediaProjectionDemo 类。
我整天都在寻找有关如何使用 Surface 对象传输数据,然后在另一台设备上接收并显示它们的示例,但没有运气。
所以问题是,怎么做?谁能指出我正确的方向?