2016-05-31 75 views
0

我正在开发一个也处理应用内购买的库项目。所以我包括IInAppBillingService.aidl文件和IabHelper类。重复压缩条目[com/android /自动售货机/计费/ IInAppBillingService.class]

问题是,当我的libarary的用户也使用另一个第三方库,它使用接口IInAppBillingService.aidl

然后,他得到重复ZIP条目错误:

java.io.IOException: Can't write [app/build/intermediates/transforms/proguard/debug/jars/3/1f/main.jar] (Can't read [app/build/intermediates/classes/debug(;;;;;;**/*.class)] (Duplicate zip entry [com/android/vending/billing/IInAppBillingService.class])) 

添加-injars libs/mylib.aar(!com/android/vending/billing/IInAppBillingService.class)proguard-rules.txt没有帮助。

如何解决这个问题?

+0

你解决了你的问题吗?如果是,如何? – Palaima

+0

@Palaima我做了另一个可选版本的库,标记为'no-billing',其中所有这些东西都被删除。 – Pitel

回答

0

您使用的是有重复的文件库,是gradle这个错误,为解决这个问题在你的项目中使用的build.gradle

android { 
packagingOptions { 
    exclude 'META-INF/LICENSE.txt' 
    exclude 'META-INF/NOTICE.txt' 
    exclude '.readme' 
    } 
} 
0

如果有重复的文件库使用在android{}

packagingOptions { 
    exclude 'META-INF/LICENSE.txt' 
    exclude 'META-INF/NOTICE' 
    exclude 'META-INF/LICENSE' 
    exclude 'META-INF/NOTICE.txt' 
    exclude 'META-INF/DEPENDENCIES' 
    exclude '.readme' 

}