2016-07-06 30 views
5

Così stavo migrando un progetto Android Studio a Java 8, il livello 24 API Android e il toolchain Jack oggi per controllare le nuove funzionalità, in particolare lambdas e CompletableFuture.CompletableFuture nella libreria di supporto Android?

Sfortunatamente, CompletableFuture sembra essere disponibile solo dal livello API 24 in poi (il mio livello API minimo per quel progetto è 16).

Sei a conoscenza di piani per portare CompletableFuture nella libreria di supporto Android? Sembra una bella soluzione per il modello Promises.

+4

Non conosco i piani di Google per la libreria di supporto. Nota che il progetto 'streamsupport' fornisce anche un backport di' CompletableFuture' nel suo modulo 'streamsupport-cfuture'. Questo funziona (e viene regolarmente testato) su Android e su tutte le versioni Java> = 6. Vedi https://sourceforge.net/projects/streamsupport/ –

+0

@StefanZobel Se si effettua il tuo commento una risposta alla mia domanda, lo accetto come meglio risposta (poiché copre Android) –

+0

Grazie. L'ho fatto. Vedi sotto. –

risposta

7

Il progetto fornisce un backport di CompletableFuture nel suo componente streamsupport-cfuture che può essere utilizzato per lo sviluppo Android, supportato su tutti i dispositivi.

3

correlati e forse utile per voi: Java: Optimizing an application using asynchronous programming

Questa risposta è di circa CompletableFuture su Java 7 utilizzando la libreria menzionato nel commento di cui sopra, non su Android. Tuttavia, la documentazione della lib afferma che funziona su Android. Non l'ho usato io stesso però.

+1

Questo dovrebbe essere un commento. –

+0

Non funziona su Android. Richiede ancora l'API 24, che è il problema originale. – Bisclavret

+0

@Bisclavret Stavo parlando di [streamsupport] (https://sourceforge.net/projects/streamsupport/) che è menzionato in quella risposta (in particolare il componente 'streamsupport-cfuture'). Quello richiede solo il livello API 14 o 15 e funziona molto bene. – Sartorius

Problemi correlati