Protocol buffers 需要一个字段类型为的GPB消息的java应用程序示例

Protocol buffers 需要一个字段类型为的GPB消息的java应用程序示例,protocol-buffers,Protocol Buffers,协议缓冲区具有字段类型“oneof” 我已经阅读了文档并定义了消息。 但不知道如何在应用中使用它。有人能给我举一个在Java中使用的例子吗 -设置请求字段之一的一条消息 -知道我设定了什么信息吗 -获取步骤1中的信息集 message TypeA { oneof OneOfRequest { TypeX getX; TypeY getY; TypeZ getZ;

协议缓冲区具有字段类型“oneof”

我已经阅读了文档并定义了消息。 但不知道如何在应用中使用它。有人能给我举一个在Java中使用的例子吗

-设置请求字段之一的一条消息

-知道我设定了什么信息吗

-获取步骤1中的信息集

    message TypeA
    {
        oneof OneOfRequest 
        {
            TypeX getX;
            TypeY getY;
            TypeZ getZ;
        }
    }

   message TypeX 
   {
       uint32 pos;
   }
   message TypeY
   {
        uint32 type;
   }
   message TypeZ
   {
       string name;
   }

我知道这个问题已经发布了一段时间了。因为我有同样的问题,没有人回答,我会把我的答案贴在这里,以防万一有人需要

我的答案是简单地使用
builder
,它是由
wire
生成的,我认为这是一个在java/android中使用
protobuf
非常有用的工具。有关详细信息,请参阅

一旦您的项目中包含了wire,并且正确地生成了原型类,您应该能够轻松地使用它。由于生成的所有类都有一个内部类
builder

您可以通过以下方式初始化it:
$yourclass.Builder().build


您可以使用
Wire
class

对其进行解码。我知道这个问题已经发布了一段时间了。因为我有同样的问题,没有人回答,我会把我的答案贴在这里,以防万一有人需要

我的答案是简单地使用
builder
,它是由
wire
生成的,我认为这是一个在java/android中使用
protobuf
非常有用的工具。有关详细信息,请参阅

一旦您的项目中包含了wire,并且正确地生成了原型类,您应该能够轻松地使用它。由于生成的所有类都有一个内部类
builder

您可以通过以下方式初始化it:
$yourclass.Builder().build

您可以使用
Wire
class对其进行解码