为什么要禁用ProGuard进行vending.billing?

l33*_*33t 7 android proguard in-app-billing

http://developer.android.com/google/play/billing/billing_best_practices.html

注意:如果使用Proguard对代码进行模糊处理,则必须将以下行添加到Proguard配置文件中:

-keep class com.android.vending.billing.**
Run Code Online (Sandbox Code Playgroud)

问题是:为什么?!

Ale*_*ien 1

使用混淆器时的主要原因/困难是混淆使用反射的代码。

例如,当您按名称实例化一个类(如 Web 服务)和某些 xml 解析器时,这不再起作用。

不允许混淆的另一个原因,但可能与问题无关:
GPL 等许可条件要求最终用户可以用更新版本的库替换库。
这样的库不允许被混淆(proguard 有一个用于 sich 库 jar 的选项)