Ho aggiornato all'ultima versione di Android N sdk. L'unica cosa che non capisco è perché non riesco a importare java.time
nel mio codice? Pensavo che Java8 fosse disponibile tramite Android N. Allora perché Google non ha aggiunto il pacchetto java.time
?Android N Java8 java.time
risposta
Android N non sostiene tutte le funzionalità di Java 8. seguenti caratteristiche sono supportate solo:
- predefinita e metodi di interfaccia statici
- Espressioni lambda
- annotazioni ripetibili
API relative alla riflessione e alla lingua:
java.lang.FunctionalInterface
java.lang.annotation.Repeatable
java.lang.reflect.Method.isDefault()
e Reflection API associati annotazioni ripetibili, come AnnotatedElement.getAnnotationsByType(Class)
API utenze:
java.util.function
Per maggiori informazioni controllare il seguente link: http://developer.android.com/preview/j8-jack.html
Grazie per il contorno. Immagino che la nostra unica opzione per Java 8 Time api sia https://github.com/JakeWharton/ThreeTenABP –
@Igor fino a quando non verrà rilasciata la versione stabile di Android-n. speriamo nella versione stabile che supporteranno –
Bene, se non hanno ancora aggiunto l'API di Time, allora probabilmente non lo faranno in Android N. Altrimenti, non ho idea di come Google prende le decisioni per includere o omettere certi apis ... –
C'è libreria backport di java.time
API per Android che può essere utilizzato
java.time
è stato aggiunto solo in API 26 (Android O):
https://developer.android.com/reference/java/time/package-summary.html
è solo un'opzione: jack è ora obsoleto e l'API java8 sarà presto supportata direttamente: https://android-developers.googleblog.com/2017/03/future-of-java-8-language-feature.html – ccpizza
@ccpizza Non supportano tutte le funzionalità di Java 8 per Android. –
Gran parte della funzionalità java.time è back-porting su Java 6 e 7 nel progetto [* ThreeTen-Backport *] (http://www.threeten.org/threetenbp/). Ulteriore adattamento per Android nel progetto [* ThreeTenABP *] (https://stackoverflow.com/q/36000997/642706); vedere [* Come usare ... *] (https://stackoverflow.com/q/38922754/642706). –