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 项目中使用生成的类

相关推荐
共享家952720 小时前
linux-数据链路层
linux·网络·macos
CZIDC1 天前
MacOS字体看起来比在 Windows 上更好?
macos
Cosmoshhhyyy2 天前
linux远程部署dify和mac本地部署dify
linux·运维·macos
行星0082 天前
mac 通过homebrew 安装和使用nvm
macos·npm·node.js
2501_928094652 天前
Mac电脑录屏工具 Omi录屏专家(Mac中文)
macos·mac·录屏工具·omi
森之鸟2 天前
Mac chrome浏览器下载DevEco Studio 6.0.0 Beta2失败
前端·chrome·macos
FairGuard手游加固2 天前
版本更新!FairGuard-Mac加固工具已上线!
macos
金玉满堂@bj3 天前
OS设备UDID查看方法
macos·objective-c·cocoa
庸懒3 天前
Electron自定义菜单栏及Mac最大化无效的问题解决
前端·macos·electron