supportパッケージがサードパーティ依存ライブラリのバージョンと一致しない問題を解決しますか?

5229 ワード

All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes).
android studioを使用してサードパーティの依存ライブラリを追加すると、上記のエラーが表示される可能性があります.
com.android.supportのパッケージバージョン番号は一致する必要がありますが、自分で作成したプロジェクトのcom.android.supportパッケージバージョン番号が高い場合があります.サードパーティのライブラリのcom.android.supportがsupportライブラリをタイムリーに更新していない場合があります.このエラーが発生します.
解決策(他の依存競合にも適用されます.)
1)自分のプロジェクトのcom.android.supportのバージョン番号を変更し、依存するライブラリのバージョン番号と一致しますが、依存するライブラリのcom.android.supportのバージョン番号にいくつかのバージョンがあるとだめです.(推奨しない)例えば:?
1
2
3 api( "com.afollestad.material-dialogs:core:0.9.4.7" ) {        exclude group: 'com.android.support' , module: 'support-v13'    }
?
2)競合が発生した場合、第三者ライブラリに依存する際にcom.android.supportパッケージへの依存を排除し、自分のプロジェクトがどのバージョンに依存してもよい方法を推奨します.
また、libraryを自分で作成して他の人に使用する場合、com.android.supportに依存する必要がある場合は、providedで依存することをお勧めします.これにより、コンパイル時にのみ有効になり、パッケージに参加しません.利用者の不便を避ける.
例:
1
2
3
provided 'com.android.support:appcompat-v7:26.1.0' provided 'com.android.support:design:26.1.0' provided 'com.android.support:support-vector-drawable:26.1.0'

はい、これだけで、あなたを けてほしいです.