Android Studio 中的 Gemini

Android Studio 中的 Gemini 是 Android 开发的编码助手。它依托人工智能技术,能够理解自然语言。它可回答您的 Android 开发查询,帮助您提高工作效率。Gemini 可以帮助 Android 开发者生成代码、查找相关资源、了解最佳实践,并节省时间。

请注意,Gemini 有时可能会提供不准确、误导性或虚假的信息,并且会非常自信地呈现这些信息。Gemini 可能会为您提供不生成预期输出的可运行代码,或者提供不最优或不完整的代码。在使用之前,请务必仔细检查 Gemini 的回答,并仔细测试和检查代码是否存在错误、bug 和漏洞。Gemini 的新功能可以帮助您以全新的方式编写代码、创建测试用例或更新 API。

如果您有兴趣参与 Android Studio Enterprise 中 Gemini 的抢先体验计划,请填写注册表单

开始使用

以下是设置 Gemini 的方法:

  1. 下载最新的 Canary 版 Android Studio
  2. 如需启动 Gemini,请打开或启动 Android Studio 项目,然后依次点击 View > Tool Windows > Gemini
  3. 如果您尚未登录 Google 账号,请在系统提示时登录。 系统随即会显示聊天框,您可以开始使用 Gemini 的交互式对话式界面。

获取 Gemini 的回答

与 Gemini 互动的主要界面是聊天窗口。您可以使用它来提出各种问题,从非常简单的开放式问题到您需要帮助解决的具体问题。以下是您可能会提出的一些问题示例;不过,您也可以随意尝试与 Android 开发相关的任何主题:

  • 如何向应用添加相机支持?
  • 我想创建一个 Room 数据库。
  • 您能提醒一下 javadoc 的格式吗?
  • 什么是深色主题?
  • 在 Android 设备上获取位置信息的最佳方式是什么?

Gemini 会记住对话的上下文,因此你还可以向它提出后续问题,例如:

  • 您能否提供 Kotlin 中的相应代码?
  • 您能告诉我如何在 Compose 中执行此操作吗?

您还可以向 Gemini 询问 Android Studio 本身,例如:

  • 如何分析应用中的卡顿问题?
  • 在哪里可以找到 CPU 性能分析器?

提示库

您还可以使用提示库工具保存和管理常用的提示,并在需要时快速调用它们。

Gemini 提示库工具

与 Gemini 互动的技巧

Gemini 的回答会因你提出问题的方式而异。以下是有关如何优化 Gemini 回答的一些提示:

  • 内容要具体。如果您想要使用某些库、API 或方法,请在问题中包含它们。
    如何使用 CameraX 向应用添加相机支持?
    如何向应用添加相机支持?
  • 描述所需回答的结构。如果您想将 Gemini 生成的代码插入到应用中,并且需要该代码采用特定格式,请向其提供相应说明。
    在该代码中插入注释。使用双斜杠来添加注释,并将每个注释放在其所描述的代码行上方。
    为此代码编写代码注释。
  • 将复杂的请求分解为一系列更简单的问题。 尤其是在询问代码时,提出一系列更简单的问题总体上可以获得更全面的答案。
    1. 请提供具有登录屏幕的应用的 MainActivity.kt 文件。
    2. 您能否添加一个代表用户个人资料的类?
    3. 您能否添加支持多个用户个人资料的代码?
    如何创建具有支持多个用户个人资料的登录界面的应用?

Gemini 提供的帮助

除了聊天界面之外,Gemini 还提供了多个可与开发流程集成的入口点:

  • 只需点击一下即可添加生成的代码:Gemini 会在其生成的代码旁边显示智能操作,让您可以快速将代码插入打开的编辑器中、将其插入 Android 清单,甚至可为答案中使用的热门库添加所需的依赖项。
  • 获取实用资源:对于某些主题,Gemini 会提供打开相关文档页面以获取更多信息的选项。
  • 排查错误:对于常见错误,Gemini 会说明其含义并提供相应解决方法。
  • “直接从代码库向 Gemini 提问”:在代码编辑器中选择文本时,右键点击并选择向 Gemini 提问操作,使用所选代码填充聊天提示。然后,您可以决定是否发送验证码。Gemini 不会在未经您明确授权的情况下发送验证码。询问 Gemini 还可帮助您排查代码编辑器中的警告和错误。

常见问题解答 (FAQ)

Gemini 会将我的代码发送到 Google 的服务器吗?

如需了解系统会分享哪些数据以及如何控制隐私设置,请参阅数据和隐私

Gemini 给出的回答是否准确可靠?

使用生成式 AI 加速实现人们的想法真的非常令人振奋,但这项技术仍处于早期阶段,Gemini 只是一项实验。有些回答可能不准确,因此请仔细检查回答中的信息。我们会根据你的反馈不断改进 Gemini。虽然 Gemini 具有符合 AI 原则的内置安全控件和清晰的反馈机制,但请注意,它可能会显示不准确的信息或令人反感的言论。

由于 AI 是一项不断发展的技术,它可以生成听起来看似合理但实际上不正确的输出。我们建议您先验证 Gemini 的所有输出,然后再使用。

Gemini 可以提供编程方面的协助吗?

可以,Gemini 能提供编程及相关领域的协助。该功能仍处于实验阶段,如果您使用代码或编码说明,须自行承担责任。在使用之前,请谨慎使用并仔细测试所有代码是否存在错误、问题和漏洞。

如何重置聊天记录?

在回答你的问题时,Gemini 会使用聊天记录来获取更多背景信息。如果聊天记录与您当前要达成的目标不再相关,请在 Gemini 窗格中点击重置对话图标 重置对话记录。

为什么我会收到“代码已被屏蔽”错误消息?

Gemini 会对模型生成的回答进行多层检查。例如,有一个检查可确保模型生成的代码不会大量复制现有内容。您的响应可能因某项检查而被屏蔽。在这种情况下,请使用其他提示重试。

Gemini 何时会在回答中引用信息来源?引用的方式是怎样的?

Gemini 应生成原创内容,而不是大量复制现有内容。我们对自己的系统进行了精心设计,以尽量避免发生这种情况,而且我们将继续改进这些系统的运作方式。如果 Gemini 确实直接引用了某个代码库的长篇内容,就会注明引用来源。引用中还可能提及适用的开源许可。您有责任遵守所有许可要求。

我使用 Gemini 时需要遵循哪些服务条款?

使用 Gemini 时,你必须遵守《Google 服务条款》《生成式 AI 附加服务条款》

如何提供有关 Gemini 的反馈?

我们期待收到您的反馈,以便我们改进 Gemini 在 Android 开发的各个领域中的回答。为提供帮助,请在开发工作流中使用 Gemini,并使用 Gemini 界面中的“我喜欢”和“不喜欢”选项将其回答标记为有用或没用。这些反馈有助于我们确定需要加强培训的方面。

Gemini 与其他依托 LLM 技术的聊天机器人有何不同?

Gemini 采用的 LLM 旨在帮助您应对各种编码场景。Gemini 与 Android Studio 紧密集成,这意味着它可以提供更相关的回答,让您只需点击一下即可执行操作和应用建议。

有哪些使用 Gemini 的提示?

  • 在提问时,请做到简明扼要。
  • 使用 Gemini 能够理解的简单语言。
  • 如果 Gemini 无法理解您的问题,请尝试重新表述。
  • 在使用 Gemini 建议之前,请先仔细查看。

如需了解详情,请参阅与 Gemini 互动的提示