Android Studio 中使用Gemini

Gemini 是Android Studio最新版本中内嵌的AI工具,它可以通过代码补全、解释代码、提供改进建议、错误分析等方式帮助开发者提高编码效率。当然,与目前大多数AI工具一样,Gemini有时可能会"非常自信"地提供不准确、错误的信息,或者实际并不能运行的代码,因此在使用之前开发者还是需要检查一下Gemini给与的答案。

从Android Studio Koala(2024.1.1)开始,就可以在Android Studio中使用Gemini了,本文简单介绍一下如何在Android Studio中使用Gemini。

启用Gemini功能

提供服务的国家

Android Studio中的Gemini目前已经对许多国家提供了服务,后续也会在遵循国家法规的情况下为更多国家提供服务,目前已提供服务的国家可以在官网查看。

在官网已提供服务的国家中其实并没有中国,不过在科学上网之后还是可以正常使用Gemini功能。

登录谷歌账号

在Android Studio中使用Gemini需要登录Google账号。

之前我在已经科学上网的环境下,在Android Studio中使用Google登录时,跳转出去的网页已经登录谷歌账号并且授权,但是Android Studio中仍然会提示连接超时,如下图:

查阅资料后,解决方法是在科学上网的环境下,将HTTP Proxy的Host和Port设置为科学上网工具所使用的Host和Port。

在Settings -> Appearance & Behavior -> HTTP Proxy中选择Manual proxy configuration -> HTTP,将Host name设置为127.0.0.1(或者localhost),将Port number设置为科学上网工具所使用的端口号(每个工具使用的端口可能不同,根据自己所用工具进行设置)。

设置完之后就可以正常登录谷歌账号。

启用Gemini

登录谷歌账号后,在添加账号页面授权Gemini使用数据。

之后可以在侧边栏中找到Gemini插件,进行下一步配置。

  • 同意一些协议。

  • 设置共享数据的范围。

这边先设置为可以共享所有项目的代码。

  • 开始使用Gemini

共享数据设置

Gemini的代码补全功能在开启数据共享之后会更为准确。由于要将代码共享出去,在公司项目中还是需要慎重使用的。可以在Settting -> Tools -> Gemini -> Context Awareness中选择数据共享的模式,如下:

通过配置文件设置共享范围

可以通过创建.aiExclude文件设置不共享数据的范围(与.gitignore类似)。

  • 在项目下创建文件,命名为.aiExclude。
  • 在.aiExclude中配置不允许共享数据的文件或文件夹。

语法设置示例可以在官网查看

使用Gemini

代码补全

设置了共享数据之后,可以使用Gemini的代码补全功能,Settting -> Tools -> Gemini 中可以开关此功能。

在启用代码时,Gemini跟根据光标前后的代码上下文提供建议,按Tab键使用建议,按Esc键清除建议。

解释代码

通过右键点击 -> Gemini -> Explain Code,使用Gemini来帮助理解选中的代码片段。

改进建议

通过右键点击 -> Gemini -> Suggest Improvements,使用Gemini来帮助优化选中的代码片段。

错误分析

在调试应用过程中如果发生崩溃,可以在Logcat中点击Ask Gemini,让Gemini帮助分析为何发生崩溃并提供解决方案。

参考

Gemini官方文档

解决Android Studio中谷歌账号登录失败

相关推荐
海水冷却8 小时前
Android 群组聊天怎么实现:基于 ZIM 的完整落地指南(附可运行 Demo)
android
三少爷的鞋11 小时前
现代 Android 架构指南:不要再主动设计 Callback 接口
android
TimeFine17 小时前
AI 编码工作流的设计
android·ai编程
骑着蜗牛撵大象32717 小时前
C++20 协程 × 屏障:手写一个 co_await 版 Barrier,让等待不再钉死线程
android·c++20·协程·并发编程·co_await·屏障同步
山东孙燕姿19 小时前
设备台账重构:从一张表到三层模型
android·java·网络·低代码·重构·rxjava
蒸鱼Yuzheng20 小时前
移动端 CPU 调度分析:线程亲和性、大小核迁移与卡顿
android·perfetto·性能分析·线程优化·cpu调度
booboosui20 小时前
安卓唤醒词:12 维 MFCC 加 DTW,阈值 1.8
android
传奇开心果20 小时前
Compose Multiplatform 共享边界实战:架构契约、互操作同步与可回退设计
android·kotlin
事圆则缓20 小时前
从开机到首帧:Android 系统与应用启动流程源码分析
android
AI吃大瓜21 小时前
指针压力表读数4:Android实现指针压力表读数(可实时检测)
android·指针读数·指针压力表·压力表·压力表读数