有没有人在运行proguard后遇到youtube api的问题? 我在运行proguard之前从youtube上获取视频的代码运行得很好,运行proguard之后我得到了奇怪的异常
ERROR/AndroidRuntime(10197): Caused by: java.lang.IllegalArgumentException:
No parser defined for Content-Type: application/atom+xml; charset=UTF-8; type=feed
我没有在任何地方设置内容类型,而是使用创建新项目时生成的默认proguard.cfg文件。
运行proguard后有没有人面临类似的问题?
尝试没有混淆的proguard,没有优化,但它给出了相同的结果。
答案 0 :(得分:7)
不确定google-api-client是否与您提到的gdata完全相同,但它必须非常相似。由于Proguard经常会破坏你的代码,你必须告诉它它能做什么和不能做什么。它绝不是一种理解反思的奇迹工具。
我不得不在其他人中添加:
-keepattributes *Annotation* # Needed by google-api-client
-keepattributes Signature # Needed by google-api-client
# Needed by google-api-client to keep generic types and @Key annotations accessed via reflection
-keepclassmembers class * {
@com.google.api.client.util.Key <fields>;
}
# Needed by Guava (google-api-client)
-dontwarn sun.misc.Unsafe