「新手」Android Studio 中使用 Protobuf
目录
1 环境
editor: Android Studio 4.2.1
language:Kotlin
2 最终方案
通过 protobuf-gradle-plugin
来将 proto
文件转换为 Java
文件,然后 Kotlin
直接调用 Java
具体过程如下,官方文档亦有介绍
3 用 protoc 手动进行文件转换
一些常见的操作系统已经有打包好的二进制文件:protobuf releases
使用例子:
手动生成文件的话,只需添加一个依赖即可
4 过程
一开始搜索 android studio protobuf kotlin
,但没找到。 之后了解到 Google 的 Protobuf 暂不支持直接生成 Kotlin
,因此搜索 android studio protobuf java
。 留意到有 protobuf-java
和 potobuf-javalite
,并且大多使用 protobuf-gradle-plugin
。 之后按教程能生成出 Java
文件。
在找 protobuf-javalite
依赖的时候,看到有 protobuf-kotlin-lite
。 尝试将 javalite
相关的改为 kotlin-lite
,但 Make Project
的时候,会出现 Unresolved Reference
。 protobuf-gradle-plugin/issues 上有相关的讨论,但没找到解决办法。 最后按一个回答进行尝试:同时生成 Java
和 Kotlin
文件,才没有报错。 但这样的话,干嘛不直接调用 Java
?