gpt4 book ai didi

android - 如果我使用 Crashlytics,我该如何使用 "Apply Changes"?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:24:19 24 4
gpt4 key购买 nike

我正在使用 Android Studio 3.5 Beta 1。我决定尝试“应用更改”。 Instant Run 存在问题,因此我们已将其禁用多年。我希望这会更好。

如果我尝试“应用代码更改”按钮,我会在“运行”窗口中收到错误消息:

Changes were not applied.
Modifying resources requires an activity restart.
Resource 'assets/crashlytics-build.properties' was modified.
Apply changes and restart activity

crashlytics-build.properties 有评论说

#This file is automatically generated by Crashlytics to uniquely
#identify individual builds of your Android application

事实上,它有一个 build_id 属性,可能会随着每次 Gradle 构建而改变。由于每当我使用“应用代码更改”或“应用更改并重新启动 Activity ”按钮时 Gradle 都会运行构建,因此 Gradle 构建会更改文件,从而阻止 Apply Run 完成。

我在网上找到的唯一与此相关的信息是一个 Reddit comment

I learned the hard way that crashlytics + proguard breaks instant run

看来我不是唯一遇到这个问题的人。删除 Crashlytics 不是一种选择。我也不希望每次我要进行一些调试时都禁用它,然后再次重新启用它。

“应用更改并重新启动 Activity”按钮起作用。我正在使用的 Activity 重新启动并且更改可见。我尝试将此时间与使用常规“运行”按钮进行比较。 “应用更改并重新启动 Activity ”需要同样长的时间。唯一的好处似乎是,我不必每次都通过应用程序导航到那个屏幕,我可以留在那个屏幕上并重新加载更改。这是一个很好的好处,我只是期待更多。

我可以做些什么来让“应用更改”对我更有效地工作?

最佳答案

您可以在 Crashlytics 中为调试版本关闭此行为:https://docs.fabric.io/android/crashlytics/build-tools.html#optimize-builds-when-you-re-not-proguarding-or-using-beta-by-crashlytics

ext.alwaysUpdateBuildId 设置为 falsedebug block 中的模块 build.gradle 中:

android {
buildTypes {
debug {
// Only use this flag on builds you don't proguard or upload to beta-by-crashlytics
ext.alwaysUpdateBuildId = false

关于android - 如果我使用 Crashlytics,我该如何使用 "Apply Changes"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56117834/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com