Anymote协议数据消息使用

时间:2012-01-13 17:04:43

标签: android google-tv

Google TV Anymote协议定义了几个可以发送到GTV设备的请求。

我使用了fling事件,它基本上被转换为GTV上的意图,请求消息中指定的URI是意图中的URI。

我不确定在哪里会使用data事件,或者在发送到GTV设备时如何解释它。

是否可以将某些任意数据发送到特定应用程序(设置过滤器)?如果没有,它用于什么?它刚刚转换成意图吗?

这是消息定义:

// Sends a string and a type to interpret this string
message Data {
    // The type of data sent to the box
    required string type = 1;

    // The data sent to the box
    required string data = 2;
}

1 个答案:

答案 0 :(得分:3)

Data proto的基本用例是将文本发送到TextView。在Google TV Remote代码中,KeyboardActivity捕获文本输入:

http://code.google.com/p/google-tv-remote/source/browse/src/com/google/android/apps/tvremote/KeyboardActivity.java

AnymoteSender通过Anymote协议设置传输:

http://code.google.com/p/google-tv-remote/source/browse/src/com/google/android/apps/tvremote/protocol/AnymoteSender.java#163

AnyMote代码中的DeviceMessageAdapter将数据绑定到Data proto:

http://code.google.com/p/anymote-protocol/source/browse/src/com/google/anymote/device/DeviceMessageAdapter.java#120

服务器(Google TV)将这些转换为KeyEvents并将它们传递给前台活动。