我目前正在尝试减少Android应用的方法计数,以便再次进行编译。我想改进的一个领域是所有正在使用的节俭生成文件。如何过度膨胀简单的节俭结构是疯狂的。
例如以下thrift结构:
struct AccessoryLocalization {
1: required string displayName;
2: required string displaySummary;
}
变成475内衬的java类!这对我来说似乎很疯狂,我并不完全理解为什么它会产生这么多。我想知道是否有人知道有任何方法可以让他们在代码生成中不那么冗长。
我正在使用Thrift 0.9.0并在运行thrift命令时使用java:android_legacy
标志。我只关心支持Gingerbread等等。
答案 0 :(得分:1)
所以这绝对是一个老问题,但本周我发布了一个特定于Android的Thrift编译器和运行时来解决这些问题:
https://github.com/Microsoft/thrifty
它会生成
代码@Nullable
/ @NonNull
注释我们的应用程序从20K的Thrift类方法到5K。希望它可以帮助你(或其他发现这个问题的人)。