【问题标题】:Exporting/Signing Android Project using GSON Library使用 GSON 库导出/签署 Android 项目
【发布时间】:2012-02-22 08:03:51
【问题描述】:

我在一个 android 应用程序中使用当前的 GSON 库,当应用程序在没有使用密钥库签名的情况下构建时,一切都按预期工作。

当我导出应用并对其进行签名时,gson 无法将 Reader 解析到我的类中。

我尝试在不使用 proguard 的情况下对应用程序进行签名,但这没有任何区别。我真的不知道为什么它在签名时表现不同。

有问题的行是这样的:

Words words = new Words();
words = gson.fromJson(r, Words.class);

应用签名时,该对象只是空的。

【问题讨论】:

  • 请问您能否更具体地说明错误,有什么异常?
  • 没有出现异常或错误,但毕竟是混淆了。

标签: android gson proguard


【解决方案1】:

哇,我原以为 proguard 的混淆会破坏你的模型,但我想现在 zipalign 把它搞砸了,为了确保你可以解析你的 json,你可以为你的模型提供特定的 gson 注释。

【讨论】:

  • 我再次尝试删除 proGuard,它现在可以正常工作了。我一定是第一次错过了什么。现在只需要弄清楚如何启用 proGuard 并让它工作。我希望答案就在这里:code.google.com/p/google-gson/source/browse/trunk/examples/…
  • 是的,这听起来很合理,但我自己很难使用 proguard,使其与我的应用程序一起工作。我最终不得不通过使用注释来删除对我的模型的直接引用。
  • 顺便说一句,我觉得 Jackson 是一个更好(更快)的对象映射器!
  • 我正在调查杰克逊,但看起来必须首先将响应保存到文件中......?在 proguard.cfg 中实现以下几行就可以了。 -keepattributes 签名 -keepattributes 注释 -keep class com.mypackagename.MyClass { *; }
猜你喜欢
  • 2012-04-26
  • 1970-01-01
  • 2016-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多