2012-01-13 137 views
1

Google TV Anymote协议定义了可以发送到GTV设备的多个请求。Anymote协议数据消息使用

我已经使用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; 
} 

回答

3

为原数据的基本用例是文本发送到一个TextView的。在谷歌电视远程代码时,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

而且DeviceMessageAdapter,在Anymote代码,将数据绑定到Data原型:

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

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