我正在给Android Instant Run进行测试运行。为了进行测试,我只是将以下行添加到我的活动的 onResume() 中:
Toast.makeText(this, "test123", Toast.LENGTH_SHORT).show();
现在,当我更改吐司的文本并重建时,它会告诉我
"Instant Run detected that a resource referenced from the AndroidManifest.xml file has changed"
谁能解释一下这里发生了什么?我没有更改任何资源,只是更改了活动 java 文件中的字符串文字。(我知道我应该在安卓中使用字符串资源)。
似乎问题是我的build.gradle修改了Android清单:
debug {
...
def theVersionNameSuffix = "-debug-" + getCurrentDateTimeString();
versionNameSuffix theVersionNameSuffix
...
}
由于每个构建中的后缀都不同,这意味着版本名称在构建之间会发生变化,从而更改 AndroidManifest。
我已经删除了版本名称后缀条目,现在它似乎可以工作。