2017-09-24 70 views
0

我必須使用程序兼容性庫我自己的項目:衝突與同一個庫,但不同的版本

implementation 'com.android.support:appcompat-v7:26.1.0' 

我的項目使用它們使用庫:

implementation 'com.android.support:appcompat-v7:26.0.1' 

因此Android Studio的上升錯誤關於這個衝突。但在我的項目中,我沒有選擇使用最新版本的compat,而是使用舊的庫。

如何合併兩者?我已經試圖排除這樣的模塊:

implementation('com.azquidk.sdk') { 
    exclude group: 'com.android.support', module: 'appcompat-v7' 
    exclude group: 'com.android.support', module: 'design' 
} 

但是不起作用。

編輯

在我發現這同時這也工作:

configurations.all { 
    resolutionStrategy.eachDependency { DependencyResolveDetails details -> 
     def requested = details.requested 
     if (requested.group == 'com.android.support') { 
      if (!requested.name.startsWith("multidex")) { 
       details.useVersion '26.1.0' 
      } 
     } 
    } 
} 

回答

1

試試補充一點:

android { 
    configurations.all { 
     resolutionStrategy.force 'com.android.support:appcompat-v7:26.1.0' 
    } 
} 
+0

一步一步,我不得不這樣做使它工作 configurations.all {分辨率策略} force(「com.android.support:appcompat-v7 :$ {libraries.google}「) force(」com.android.support:design:${libraries.google}「) force(」com.android.support:support-v13:${libraries.google}「 ) } } Thanks @shmakova – ejay