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中谷歌账号登录失败

相关推荐
bropro31 分钟前
MySQL不使用子查询的原因
android·数据库·mysql
执笔论英雄1 小时前
【cuda】 pinpaged
android·java·数据库
新青年.2 小时前
Android(Compose)使用 LibVLC 播放 RTSP 视频流
android
一见2 小时前
WorkBuddy安装Skill的方法
android·java·javascript
毛骗导演2 小时前
万字解析 OpenClaw 源码架构-跨平台应用之Android 应用
android·前端·架构
happymaker06263 小时前
JDBC(MySQL)——DAY02
android·数据库·mysql
PenguinLetsGo3 小时前
代码段的消失:页表异常清零引发的 ILL_ILLOPC 溯源
android·linux
huangchen3 小时前
Compose 中 viewModel() 函数分析
android
Tobinary3 小时前
Android系统启动
android
我又来搬代码了4 小时前
【Android】基于GDAL库实现SHP文件读写
android