我使用元语法类来处理 Objective C 中的 Google Protobuf 对象。
这在制作 protobuf 对象并将其发送到服务器时可以正常工作。但是,我无法读取从服务器发回的 protobuf 数据,我似乎无法解析。我在 didReceiveData 方法中使用此代码:
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{
UserId *identity = [UserId parseFromData:data];
NSLog(@"identity firstname = %@", identity.firstName);
}
NSLog 什么都没有打印出来,我知道我在那里有数据,因为当我 NSLOG 得到数据方法变量时 -
<0a620a0d 12054c61 7572611a 04546573 74125108 dd4f1205 4c617572 611a0454 65737422 0a32322f 30382f32 3031322a 0032194c 61757261 2e466f72 72657374 40736973 706f7274 2e636f6d 3a0040ff ffffffff ffffffff 014a096c 61757261 74657374>
此外,当我在代码中创建一个 protobuf 对象并访问它的数据属性时 - [protobufobject data] 我能够通过上述方法提取信息,所以我认为这是我在解析数据时缺少的东西!
非常感谢任何帮助!