Android 我怎样才能使用;“应用更改”;如果我使用Crashlytics?
我正在使用Android Studio 3.5 Beta 1。我决定尝试“应用更改”。即时运行是有问题的,所以我们已经禁用了多年。我希望这会更好 如果我尝试“应用代码更改”按钮,则在运行窗口中会出现错误:Android 我怎样才能使用;“应用更改”;如果我使用Crashlytics?,android,android-studio,android-gradle-plugin,Android,Android Studio,Android Gradle Plugin,我正在使用Android Studio 3.5 Beta 1。我决定尝试“应用更改”。即时运行是有问题的,所以我们已经禁用了多年。我希望这会更好 如果我尝试“应用代码更改”按钮,则在运行窗口中会出现错误: Changes were not applied. Modifying resources requires an activity restart. Resource 'assets/crashlytics-build.properties' was modified. Apply chan
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\u id
属性,该属性可能会随着每个Gradle构建而改变。由于Gradle在我使用“应用代码更改”或“应用更改并重新启动活动”按钮时运行构建,因此Gradle构建会更改文件,从而阻止应用运行完成
我在网上找到的唯一与此相关的信息是
我学到了crashlytics+proguard打破即时跑步的艰难方法
看来我不是唯一有这个问题的人。删除Crashlytics不是一个选项。我也不想在每次进行调试时禁用它,然后再次重新启用它 “应用更改并重新启动活动”按钮不起作用。我正在使用的活动将重新启动并显示更改。我试着用常规的“运行”按钮来比较这一点。“应用更改并重新启动活动”所花的时间与此相同。唯一的好处似乎是,我不必每次都通过应用程序导航到那个屏幕,而是可以留在那个屏幕上重新加载更改。这是一个很好的好处,我只是期待更多
我可以做些什么来让“应用更改”更有效地为我工作?您可以在Crashlytics中关闭调试版本的此行为: 在
debug
块中的模块build.gradle
中将ext.alwaysUpdateBuildId
设置为false
:
android {
buildTypes {
debug {
// Only use this flag on builds you don't proguard or upload to beta-by-crashlytics
ext.alwaysUpdateBuildId = false
“删除Crashlytics不是一个选项”--有没有办法禁用该属性的生成,至少对于
debug
builds?欢迎使用堆栈溢出!请您提供说明,而不仅仅是链接,好吗?这是回答问题的首选方式,因为链接可能会中断或更改。From:“不再支持Crashlytics特定的生成标志ext.alwaysUpdateBuildId
和ext.enableCrashlytics
。如果存在,请将其从Gradle配置中删除。”