Android開発環境に最適なJDKのバージョンについて

Android Studioを使い始めて、開発環境にもだんだん慣れてきました。
(まだEclipseとの違いで、色々困ることも多いのですが・・・)
さて、別の調べ物をしていた時に、たまたまこんなサイトを見かけました。

“Is it possible to use Java 8 for Android development?
http://stackoverflow.com/questions/23318109/is-it-possible-to-use-java-8-for-android-development”

そういや、Android開発環境を作る時にも、あまりJDKのバージョンを気にしたことはありませんでした。
(様々なアプリケーションを動かす自分の開発環境は基本的にまだJDK7なので)
ただ、セキュリティのことを考えると、バージョンアップできるものならしておいた方がいいと思い、
Android開発環境に適したJDKのバージョンについて今回少し調べてみました。
するといくつかの発見がありました。

自分はJDKのバージョンとか気にしない方だったので(ていうか、JDK7ならとりあえず大丈夫だろうという安易な考えですが・・・)
知らなかったのですが、Android API 19から、JDK7が正式にサポートされたそうですね。
また、Android StudioのWebサイトにはAndroid5.0以上でビルドするにはJDK7が必要と書いてあります。
従って、今はJDK7が適切なJDKということになるのでしょう。
私は偶然JDK7を使っていたので大丈夫でした。(とはいえ環境構築時にはきちんと調べるべきですね。)
では、JDK8はどうかというと、今はまだダメのようです。
特に多かったのが、JDK8のラムダ式をAndroidでも使いたいというものでしたが、JDK8とJDK7でバイトコードの仕様が異なるので、そのままでは無理だそうです。
JDK8のラムダ式に関しては、gradle retrolambaを使うことで、バイトコードをJDK7の仕様に変換すれば可能のようです。
ただし、gradle retrolambaは、ラムダ式の機能のみをサポートしているので、それ以外のJDK8の新機能をサポートしていないことに注意しないといけません。

個人的には、Androidアプリ開発で無理してまでラムダ式を使うことはないと思っているので、JDK8がサポートされるまで待ちたいと思います。

コメント

PAGE TOP
タイトルとURLをコピーしました