5

Quando si utilizzano i nuovi widget Android CardView e RecyclerView, ho notato che richiedono minSdkVersion L. Così, se il progetto utilizza per esempio minSdkVersion 14, si ottiene un errore come questo:Perché CardView e RecyclerView richiedono minSdkVersion L?

> Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version L declared in library com.android.support:cardview-v7:21.0.0-rc1 

io ci so è una soluzione che sta dicendo Gradle di ignorare la minSdkVersion della biblioteca e utilizzare quello del progetto, invece.

Tuttavia, se la libreria richiede Android L, è possibile ignorare questo errore e utilizzarlo comunque con versioni precedenti? e perché Google ha deciso di non farli funzionare con versioni pre-L? Immagino sia perché non è la versione finale?

risposta

7

Tutte le API rilasciate da Google all'I/O (incluso CardView e RecyclerView) sono attualmente intese solo come anteprime e non devono essere utilizzate per le applicazioni di produzione.

Questo è il metodo di Google per impedire a queste librerie di essere visualizzate nelle applicazioni di produzione prima che vengano completate e rilasciate.

3

Se si desidera utilizzare uno di questi con le versioni precedenti di Android in questo momento è davvero facile. Basta aggiungere RecyclerViewLib come dipendenza nel file build.gradle.

compile 'com.twotoasters.RecyclerViewLib:library:[email protected]' 

L'autore ne parla nel suo blog post. Tutto il codice che dipende da L è stato rimosso, quindi questo è sicuro da usare. In bocca al lupo!