我将 Android Studio 更新为 Flamingo、Gradle 和库。之后,如果通过 Android Studio 从模拟器中安装该应用程序,则该应用程序运行良好,但如果使用捆绑包从 Play 商店安装该应用程序,则该应用程序会失败。我认为如果从 .apk 文件安装它就可以工作。
我得到例外:
java.lang.IllegalArgumentException: class o4.b isn't parameterized
Run Code Online (Sandbox Code Playgroud)
让我在这里写下我的解决方案,以防对其他人有所帮助。
几个小时后,发现异常发生在这段代码中:
Type type = new TypeToken<ArrayList<String>>() {}.getType();
Run Code Online (Sandbox Code Playgroud)
我需要使用 Gson.fromJson() 函数的代码。
TypeToken 是使用以下命令导入的:
import com.google.common.reflect.TypeToken;
Run Code Online (Sandbox Code Playgroud)
我不得不改为:
import com.google.gson.reflect.TypeToken;
Run Code Online (Sandbox Code Playgroud)
然后我遇到了另一个错误:
RuntimeException:缺少类型参数
感谢这个答案,我解决了:/sf/answers/5076440421/
在proguard-rules.pro文件中我添加了以下内容:
-keep class com.google.gson.reflect.TypeToken
-keep class * extends com.google.gson.reflect.TypeToken
-keep public class * implements java.lang.reflect.Type
Run Code Online (Sandbox Code Playgroud)
这一切让我损失了大量的时间。我希望我没有更新 Android Studio 或依赖项。
| 归档时间: |
|
| 查看次数: |
604 次 |
| 最近记录: |