我可能只是在我的proto文件中弄乱了一些东西,但我似乎无法调用toByteArray函数。
使用Java和proto文件是用protoc编译的。
我在说什么......
BaseMessage.builder = baseMessage = BaseMessage.newBuilder();
Acknowledgement.builder = acknowledgeMessage = Acknowledgement.newBuilder();
acknowledgeMessage.setOk(true);
baseMessage.setAcknowledgement(acknowledgeMessage);
baseMessage.build();
byte[] send = baseMessage.toByteArray();
BaseMessage被声明为......
public static final class BaseMessage
extends com.google.protobuf.GeneratedMessage
implements BaseMessageOrBuilder {
也许我错过了什么......
BaseMessage正在扩展GeneratedMessage,它从AbstractMessageLite继承toByteArray(),其中toByteArray是公共的...所以我应该可以使用它吗?
答案 0 :(得分:4)
是的,你可能意味着:
baseMessage.build().toByteArray()