15

我想通过使用 WiFi 直接连接开发一个 AP 以将(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();
    }
}
4

2 回答 2

1

如果CatVision.io - Android 应用程序的屏幕共享软件组件,我是作者。与媒体投影相关的源代码(基本上是设备的屏幕)在这里:https ://github.com/TeskaLabs/CatVision-io-SDK-Android/blob/master/cvio/src/main/java/com /teskalabs/cvio/CatVision.java

于 2017-07-28T13:53:50.630 回答
0

这取决于您尝试连接的设备。默认情况下,Android 不充当 Miracast/无线显示接收器。
要能够实现Android-Android无线显示共享,请参考Miracast Sink 支持android-HowTo

于 2013-12-09T10:07:21.717 回答