如何通过 WiFi 直接连接将屏幕共享到另一台设备
Posted
技术标签:
【中文标题】如何通过 WiFi 直接连接将屏幕共享到另一台设备【英文标题】:How can I share screen to another device base on WiFi direct connection 【发布时间】:2013-06-23 04:42:44 【问题描述】:我想开发一个 AP,通过 WiFi 直接连接将 (SOURCE) 屏幕共享到另一个 (SINK) 设备。
我通过 Wifi direct API 成功连接了两台设备,但 getPresentationDisplay()
返回 null。 SOURCE 设备似乎没有找到 SINK 设备导出的任何附加显示服务。 API 级别 4.2.2 是否支持它?或者是否有任何 API 可以将显示服务注册到 SOURCE?
//Get Media router service
mMediaRouter = (MediaRouter) getSystemService(Context.MEDIA_ROUTER_SERVICE);
MediaRouter.RouteInfo route = mMediaRouter.getSelectedRoute(MediaRouter.ROUTE_TYPE_LIVE_VIDEO);
if (route != null)
Display presentationDisplay = route.getPresentationDisplay();
if (presentationDisplay != null)
Presentation presentation = new DemoPresentation(this, presentationDisplay);
Log.i("tracer", "presentation.show();");
presentation.show();
【问题讨论】:
你能出示你的代码吗? 你的意思是像maxivista.com。 没那么复杂...我要做的是将SOURCE设备的屏幕内容镜像到SINK设备的屏幕上。 【参考方案1】:CatVision.io 是我的作者 - android 应用程序的屏幕共享软件组件。与媒体投影(基本上是设备的屏幕)相关的源代码在这里:https://github.com/TeskaLabs/CatVision-io-SDK-Android/blob/master/cvio/src/main/java/com/teskalabs/cvio/CatVision.java
【讨论】:
祝福你@Ales Teska【参考方案2】:这取决于您尝试连接的设备。默认情况下,Android 不充当 Miracast/无线显示接收器。 能够实现Android-Android无线显示共享,参考Miracast Sink support for android - HowTo
【讨论】:
请注意 link-only answers 是不鼓励的,所以答案应该是寻找解决方案的终点(与另一个中途停留的参考相比,随着时间的推移往往会变得陈旧)。请考虑在此处添加独立的概要,并保留链接作为参考。 @kleopatra 这不是仅链接的答案。我已经解释了什么对我不起作用,以及为什么不起作用。该链接包含无法在此处复制的几个步骤和源补丁。因此,“参考”以上是关于如何通过 WiFi 直接连接将屏幕共享到另一台设备的主要内容,如果未能解决你的问题,请参考以下文章
Android:如何检查设备是不是通过 WiFi - Direct 连接到另一台设备?