更新到 android gradle 插件 3.5 后的混淆器问题
proguard problem after updating to android gradle plugin 3.5
我将某些对象的 json
表示保存为我的应用程序中的缓存。更新应用程序的每个版本后,我没有遇到任何问题,并且 json
对象已正确转换为 java 对象。更新到 android gradle 插件 3.5 后(添加此行):
classpath 'com.android.tools.build:gradle:3.5.0'
当我创建发布 apk 时,它似乎无法将 json
字符串转换为 java 对象,并且混淆名称似乎已更改。当我将其还原为 gradle 插件 3.4.2 时,一切正常。那么问题是什么,我该如何解决?
我应该将缓存的对象排除在混淆之外,但我暂时禁用了 R8
并启用了混淆器,方法是将此行添加到 gradle.properties
文件:
android.enableR8=false
并将此行添加到应用 build.gradle
文件中:
useProguard true
minifyEnabled true
问题解决了。
我也遇到了同样的错误。
而且我发现这是用于减小应用程序大小的 enabledR8 的错误。
而且这是真的预定义。所以通过设置值,假错误消失了。
在 gradle.properties 文件中设置 r8 的值为 false。
android.enableR8=false
我将某些对象的 json
表示保存为我的应用程序中的缓存。更新应用程序的每个版本后,我没有遇到任何问题,并且 json
对象已正确转换为 java 对象。更新到 android gradle 插件 3.5 后(添加此行):
classpath 'com.android.tools.build:gradle:3.5.0'
当我创建发布 apk 时,它似乎无法将 json
字符串转换为 java 对象,并且混淆名称似乎已更改。当我将其还原为 gradle 插件 3.4.2 时,一切正常。那么问题是什么,我该如何解决?
我应该将缓存的对象排除在混淆之外,但我暂时禁用了 R8
并启用了混淆器,方法是将此行添加到 gradle.properties
文件:
android.enableR8=false
并将此行添加到应用 build.gradle
文件中:
useProguard true
minifyEnabled true
问题解决了。
我也遇到了同样的错误。
而且我发现这是用于减小应用程序大小的 enabledR8 的错误。
而且这是真的预定义。所以通过设置值,假错误消失了。
在 gradle.properties 文件中设置 r8 的值为 false。
android.enableR8=false