Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I use JDK 11 HTTP packages in Android

I am a Web Applications developer using J2EE Technology. I have made extensive use of Oracle's / OpenJDK's HTTP packages, as I find them more comfortable fo development.

https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpClient.html

import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

Today, I wish to write an Android Application in Java using the same packages but I somehow couldn't find them. I could find OkHttpClient, Apache's HttpClient as well but I am keen on using OpenJDK's HTTPClient.

There are of course many suggesting to use Apache's HTTPClient but I am not looking for that.

like image 236
Nandhan Thiravia Avatar asked Oct 28 '21 08:10

Nandhan Thiravia


People also ask

Does OpenJDK 11 include HTTP packages in Android?

OpenJDK 11 Updates in Android 13 do not include HTTP packages. Today, I wish to write an Android Application in Java using the same packages but I somehow couldn't find them The Android SDK does not include everything in any particular Java SDK, especially J2EE.

How do I download the Android 11 SDK?

Get the Android 11 SDK After you install and open Android Studio, install the Android 11 SDK as follows: Click Tools > SDK Manager. In the SDK Platforms tab, select Android 11.

Is Java 11 fully supported on Android?

The answer to your question is no. The top fully supported version of Java is Java 8 . As a complements, you can check the links below for more details and understanding. Does java 11 support android?

What HTTP packages do you use for Java Development?

I have made extensive use of Oracle's / OpenJDK's HTTP packages, as I find them more comfortable fo development. import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse;


1 Answers

Today, I wish to write an Android Application in Java using the same packages but I somehow couldn't find them

The Android SDK does not include everything in any particular Java SDK, especially J2EE. And, at the present time, the Android SDK tops out at Java 8 — classes, methods, and other items introduced after that are not in the Android SDK.

I am keen on using OpenJDK's HTTPClient

You are welcome to attempt to backport HTTPClient to work on the Android SDK. A quick glance at the source code suggests that it depends too much on things that the Android SDK lacks, and so that backport would be tedious at best and may not succeed. It also will require you to license your app (or anything else that uses this backport) under the GPL, which you may or may not want to do.

Also, if other developers will work on this project, you should be making your decisions on what to use based on what is best for the team (and, if relevant, the company or other organization that your team belongs to). Investing in this backport effort may not be the best option, compared to using OkHttp.

like image 117
CommonsWare Avatar answered Sep 20 '22 00:09

CommonsWare