Mac 安装 protobuf 和Android Studio 使用

  1. 安装,执行命令

    brew install protoc

  2. Mac 错误提示:zsh: command not found: brew解决方法

解决方法:mac 安装homebrew,

用以下命令安装,序列号选择中科大(1)或 阿里云

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 2022年4月27日再次更新 可以直接使用官网的最新安装命令 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 如果还是不行的话可以上官网看看:HomeBrew官网 只不过官网非常慢,推荐使用下面的解决方案 |

  1. 安装完成输入命令验证

    protoc --version

显示 libprotoc x.x (版本号)就安装成功了.

二、Android Studio 使用

1. 下载插件,缺少的就下载

2. 配置 Gradle

2.1 在 build.gradle 中添加插件依赖

打开你的项目的顶级 build.gradle 文件,在 buildscriptdependencies 下添加 Protocol Buffers 插件依赖:

buildscript {
    repositories {
        google()
        // 其他仓库...
    }
    dependencies {
        classpath 'com.google.protobuf:protobuf-gradle-plugin:0.9.4'
        // 其他依赖...
    }
}

2.2 应用插件

在你的 app 模块的 build.gradle 文件中应用 Protocol Buffers 插件,并指定 protobuf 文件的位置:

   apply plugin: 'com.android.application'
   apply plugin: 'com.google.protobuf'

   android {
       // protobuf依赖的3.22.0之后版本必须要求添加,
       // 使用protobuf低版本依赖生成的java文件中有报错.
       compileOptions {
           sourceCompatibility 1.8
           targetCompatibility 1.8
       }
       // 其他配置...
   }

   //这里暂未使用,也没有配置  start
   protobuf {
       protoc {
           // 指定 Protobuf 编译器的版本
           artifact = 'com.google.protobuf:protoc:编译器版本号'
       }
       // 设置 protobuf 文件的路径
       // 示例路径,根据你的实际情况更改
       generatedFilesBaseDir = "$projectDir/src/main/java"
   }
   //这里暂未使用,也没有配置  start


   dependencies {
       //添加protobuf依赖
       implementation 'com.google.protobuf:protobuf-java:3.24.4'
       implementation 'com.google.protobuf:protoc:3.24.4'
       //implementation 'com.google.protobuf:protobuf-javalite:3.24.4'
   }

3. 编写 .proto 文件

在src/main/下面新建 proto目录,用来编写.proto文件

4. 生成 Java 代码

方法一:

  1. 打开AS的Terminal终端,输入命令,以图为例

    protoc --java_out=src/main/java/ --proto_path=src/main/proto student.proto

  2. 如上图就会在指定的java包名下生成咱们指定的StudentB这个java类.

方法二(未测试):

  1. 运行 Gradle 的任务以生成 Java 代码。你可以在 Android Studio 的右侧 Gradle 选项卡中找到你的项目,展开 Tasks -> other -> protobuf,然后双击 generateProto 任务运行。

  2. 或者,可以在终端或命令行中进入你的项目根目录,运行以下命令:

    ./gradlew generateProto
    

    这将使用 Protocol Buffers 插件生成 Java 代码。

  3. 在 Android 项目中使用生成的类

相关推荐
三劫散仙1 小时前
Mac vscode 激活列编辑模式
macos
endingCode5 小时前
45.坑王驾到第九期:Mac安装typescript后tsc命令无效的问题
javascript·macos·typescript
soulteary7 小时前
突破内存限制:Mac Mini M2 服务器化实践指南
运维·服务器·redis·macos·arm·pika
小江村儿的文杰17 小时前
XCode Build时遇到 .entitlements could not be opened 的问题
ide·macos·ue4·xcode
天涯倦客的美丽人生19 小时前
2024年11月最新 Alfred 5 Powerpack (MACOS)下载
macos
SoraLuna19 小时前
「Mac玩转仓颉内测版24」基础篇4 - 浮点类型详解
开发语言·算法·macos·cangjie
总爱写点小BUG20 小时前
VM虚拟机装MAC后无法联网,如何解决?
macos
Cod_Next1 天前
Mac系统下配置 Tomcat 运行环境
java·macos·tomcat
ZVAyIVqt0UFji1 天前
iOS屏幕共享技术实践
macos·ios·objective-c·cocoa
Zhijun.li@Studio1 天前
Mac下的vscode远程ssh免密码登录
vscode·macos·ssh