android开发Apply Changes功能,无需重启应用,快速运行(安卓开发application)

在 Android Studio 3.5 及更高版本中,Apply Changes 可让您将代码和资源更改推送到正在运行的应用,而无需重启应用(在某些情况下,无需重启当前 Activity)。有了这种灵活性,您就可以控制在想部署和测试细微增量更改时应用的重启范围,同时保持设备的当前状态。Apply Changes 使用搭载 Android 8.0(API 级别 26)或更高版本的设备上支持的浪Android JVMTI 实现中的功能。如需详细了解 Apply Changes 的工作原理,请参阅 Android Studio Project Marble:Apply Changes。

要求

Apply Changes 操作仅在满足以下条件时可用:

  • 您使用调试编译变体来编译应用的 APK
  • 您将应用部署到搭载 Android 8.0(API 级别 26)或更高版本的目标设备或模拟器上。

使用 Apply Changes

如果要将更改部署到兼容设备,请使用以下选项:

“Apply Changes and Restart Activity”图标

尝试通过重启 Activity 但不重启应用来应用资源和代码更改。通常,如果您修改了方法正文中的代码或修改了现有资源,则可以使用此选项。

您也可以按 Ctrl Alt F10(或者,在 macOS 上,按 Control Shift Command R)来执行此操作。

“Apply Code Changes”图标

尝试仅应用代码更改而不重启任何内容。通常,如果您修改了方法正文中的代码,但没有修改任何资源,则可以使用此选项。如果您既修改了代码,又修改了资源,则应该用 Apply Changes and Restart Activity

您也可以按 Ctrl F10(或者,在 macOS 上,按 Control Command R)来执行此操作。

“Run”图标

部署所有更改并重启应用。如果使用任一 Apply Changes 选项都无法应用您所做的更改,请使用此选项。要详细了解需要重启应用的更改类型,请参阅 Apply Changes 的限制。

为 Apply Changes 启用 Run 回退机制

请您点击 Apply Changes and Restart ActivityApply Code Changes 后,Android Studio 会构建新 APK 并确定是否可以应用更改。如果无法应用更改并且会导致 Apply Changes 失败,则 Android Studio 会改为提示您重新运行您的应用(通过点击“Run”图标

)。不过,如果您不想在每次发生这种情况时都收到提示,则可以将 Android Studio 配置为在无法应用更改时自动重新运行您的应用。

要启用此行为,请按以下步骤操作:

  1. 打开 SettingsPreferences 对话框:在 Windows 或 Linux 上,从菜单栏中依次选择 File > Settings。在 macOS 上,从菜单栏中依次选择 Android Studio > Preferences
  2. 依次转到 Build, Execution, Deployment > Deployment
  3. 选中复选框以针对任一 Apply Changes 操作启用自动 Run fallback。
  4. 点击 OK

注意:某些类型的更改不会导致 Apply Changes 失败,但仍然要求您手动重启应用,然后才能看到这些更改。例如,如果您更改了某个 Activity 的 onCreate() 方法,则只有在该 Activity 重新启动后,这些更改才会生效,因此您必须重启应用才能看到这些更改。

Apply Changes 的限制

Apply Changes 旨在加快应用部署流程。不过,它的使用时机存在一些限制。如果您在使用 Apply Changes 时遇到任何问题,请提交错误。

需要重启应用的代码更改

某些代码和资源更改必须在重启应用之后才能应用,其中包括以下更改:

  • 添加或删除方法或字段
  • 更改方法签名
  • 更改方法或类的修饰符
  • 更改类继承行为
  • 更改枚举中的值
  • 添加或移除资源
  • 更改应用清单
  • 更改原生库(SO 文件)

库和插件

某些库和插件会自动更改应用的清单文件或清单中引用的资源。这些自动更新可能会通过以下方式干扰 Apply Changes:

  • 如果库或插件更改应用的清单,您不能使用 Apply Code Changes 图标 或 Apply Changes and Restart Activity 图标 ,而必须重启应用,然后才能看到相应更改。
  • 如果库或插件更改应用的资源文件,您不能使用 Apply Code Changes 图标 ,而必须使用 Apply Changes and Restart Activity 图标 来查看相应更改。

您可以通过为调试构建变体停用所有自动更新来避免这些限制。

例如,Crashlytics 在每次构建过程中使用唯一的构建 ID 更新应用资源,这会阻止您使用 Apply Code Changes 图标

,并要求您重启应用的 Activity 才能看到相应更改。您可以停用此行为,以便能将 Apply Code Changes 与 Crashlytics 一起用于调试 build。

直接引用已安装 APK 中的内容的代码

如果您的代码直接引用已在设备上安装的应用 APK 中的内容,在您点击了Apply Code Changes 图标

后,该代码可能会导致崩溃或出现异常。发生此行为的原因是,当您点击 Apply Code Changes 时,设备上的底层 APK 会在安装过程中被替换。在这些情况下,您可以改为点击 Apply Changes and Restart Activity 图标 或 Run 图标 。

android开发Apply Changes功能,无需重启应用,快速运行(安卓开发application)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年5月6日 下午7:03
下一篇 2024年5月6日 下午7:15

相关推荐

  • 本级科研项目

    本级科研项目: 在本级科研项目中,我们团队的目标是开发一种能够自动检测和分类垃圾邮件的软件。垃圾邮件是一封又一封,它们通常是推销广告、诈骗信息和其他恶意内容,对我们的日常生活造成了…

    科研百科 2025年2月1日
    0
  • 科研项目现有基础数据库

    科研项目现有基础数据库 随着科技的不断发展,科研项目也越来越复杂。这些项目涉及到大量的数据和信息,需要一个完善的数据库来存储和管理这些数据。因此,科研项目现有基础数据库成为了一个非…

    科研百科 2025年5月16日
    1
  • 科研项目推进考核办法

    科研项目推进考核办法 近年来,随着科技的不断发展,科研项目已经成为国家科技创新的重要支撑。然而,在推进科研项目的过程中,考核办法的制定和实施也变得越来越重要。下面,我们将介绍一种科…

    科研百科 2025年5月15日
    1
  • 常用项目管理系统

    常用项目管理系统 项目管理系统是一种用于管理和跟踪项目的工具,可以帮助项目经理、团队和公司更好地组织和管理项目。以下是一些常用的项目管理系统: 1. Microsoft Proje…

    科研百科 2024年12月25日
    0
  • Bug管理神器推荐:高效实用的Bug管理工具和软件(bug 管理工具)

    当涉及到错误管理时,bug管理软件或工具可能是一个很好的资产。使用正确的bug管理系统,团队可以有效地发现、处理和跟踪软件中的错误。市场上有许多不同的bug管理系统和工具,这使得选…

    科研百科 2024年4月28日
    98
  • 大学跟着导师做项目有什么好处

    大学跟着导师做项目的好处 随着大学教育的普及,越来越多的学生选择跟随导师进行项目研究。跟着导师做项目不仅可以提高学生的研究能力,还可以为学生提供许多好处。本文将介绍大学跟着导师做项…

    科研百科 2024年10月23日
    5
  • 科研项目津贴

    科研项目津贴 科研项目津贴是一种为科研项目工作人员提供的收入,旨在为研究人员提供经济上的支持,让他们能够更好地开展研究工作。 科研项目津贴的发放对象主要是科研项目中的研究人员,包括…

    科研百科 2025年2月4日
    0
  • 安卓用户必备!功能强大的扫描神器,清爽免费(安卓扫描工具)

    现在很多文件除了要原件,还要电子版的,毕竟电子版更便捷,只需要带一台手机即可。但很多小伙伴还不知道纸质版的文件要怎么变成电子版,今天小编就跟大家说一说把纸质版文件转换成电子版的工具…

    科研百科 2023年4月22日
    315
  • 科研项目完成指标证明

    科研项目完成指标证明 近年来,随着科技的飞速发展,科研项目成为了学术界和工业界关注的焦点。然而,科研项目的完成情况和成果的质量,直接关系到研究成果的质量和价值。因此,对科研项目完成…

    科研百科 2025年3月25日
    3
  • “五式”分类管理 建强党员队伍(党员队伍分类管理试点工作情况报告)

    为深入贯彻落实全面从严治党要求,提升抓党建促乡村治理能力,闻喜县结合全县党员特点,制定了《闻喜县农村党员分类管理办法(试行)》,按照不同的年龄层次、从业特点、职务身份等实际情况,将…

    科研百科 2023年7月24日
    147