Android開発にJava 8を使用することは可能ですか? 質問する

Android開発にJava 8を使用することは可能ですか? 質問する

Web で検索しても、Android 開発で Java 8 がサポートされているかどうかは不明です。

Java 8 をダウンロード/セットアップする前に、Android 開発で Java 8 がサポートされているかどうかが記載されている「公式」ドキュメントを教えていただけますか。

ベストアンサー1

2017/11/04更新 - Android Studio 3.0ではJava 8がネイティブサポートされるようになりました gradle-retrolambda。は不要になりました。参考:

上記のリンクには、 を使用している場合の移行手順も含まれていますgradle-retrolambda。元の回答は以下の通りです。


Android は Java 8 をサポートしていません。Java 7 までしかサポートしていません (kitkat を使用している場合)。また、invokedynamic はなく、新しい構文シュガーのみサポートされています。

AndroidでJava 8の主要機能の1つであるラムダを使用する場合は、gradle-retrolambaこれは、Java 8 バイトコードを Java 6/7 に戻すツールである retrolambda を統合する Gradle ビルド依存関係です。基本的に、Android Studio のコンパイラを Java 8 バイトコードをコンパイルするように設定してラムダを許可すると、Java 6/7 バイトコードに戻され、次に dalvik バイトコードに変換されます。これは、公式サポートの代わりに Android で JDK 8 の機能を試してみたい場合のハックです。

おすすめ記事