通过意图启用屏幕投射

3

有没有一个Intent可以激活Google Cast应用程序的屏幕镜像功能?

我需要使用这个功能,并希望使其激活尽可能简单。

3个回答

4

不,用户必须激活该功能。如果您想将自己的应用程序内容镜像到Cast设备,则可以使用Google Cast Remote Display API。


我会去查看的。谢谢。 - Knossos

3
如果你有兴趣开发用于屏幕镜像的远程显示应用程序,可以使用一个名为castscreen的库,将过程简化为几行代码。
不幸的是,无法像Google Cast应用程序那样使该过程变得流畅:他们使用READ_FRAME_BUFFER清单权限来获取用户的屏幕内容,而第三方应用程序必须显式地请求用户的屏幕捕获权限(出于明显的安全原因)。如果你使用与应用程序相同的私钥签署自己的ROM,则可以使用READ_FRAME_BUFFER,但这对大多数用例来说是不切实际的。

1

这是一个简单的方法来实现镜像投射(不是谷歌投射)。

try {
        startActivity(new Intent("android.settings.WIFI_DISPLAY_SETTINGS"));
    } catch (ActivityNotFoundException e) {
        e.printStackTrace();
        try {
            startActivity(new Intent("com.samsung.wfd.LAUNCH_WFD_PICKER_DLG"));
        } catch (Exception e2) {
            try {
                startActivity(new Intent("android.settings.CAST_SETTINGS"));
            } catch (Exception e3) {
                Toast.makeText(getApplicationContext(), "Device not supported", Toast.LENGTH_LONG).show();
            }
        }
    } 

使用这些权限:

<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接