Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Feat]: Add Android support for A2A HTTP Client and decouple JdkA2AHttpClient (v0.3.x)

Aperta
#793 12 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Tranquilla
Stack tecnologico
android

Direzione di ricerca

La issue menziona JdkA2AHttpClient hardcoded in A2A.java e nei provider di trasporto. Inizia esaminando la struttura del modulo http-client e il client esistente. Cerca il pattern ServiceLoader (SPI) per capire come implementare A2AHttpClientFactory. I record del modulo spec/ richiedono annotazioni @JsonProperty. 'Done' significa che l'SDK funziona su Android con un nuovo AndroidA2AHttpClient e che sono state applicate le correzioni di Jackson.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Is your feature request related to a problem? Please describe.

Problem

Currently, the A2A Java SDK hardcodes the use of JdkA2AHttpClient in several places (such as A2A.java and various transport providers). This client relies on java.net.http.HttpClient, which is not available in standard Android environments, making the SDK unusable on Android.
Additionally, when running on Android, Jackson fails to deserialize Java records properly without explicit property annotations, leading to parsing errors for spec models.

Describe the solution you'd like

Proposed Solution

  • SPI Pattern: Introduce A2AHttpClientFactory and A2AHttpClientProvider using Java's ServiceLoader (SPI) to dynamically load the best HTTP client available on the classpath.
  • Android Client: Implement AndroidA2AHttpClient using HttpURLConnection (which is safe for Android).
  • Jackson Fixes: Add @JsonProperty annotations to records in the spec/ module to ensure they can be parsed on Android.
Describe alternatives you've considered

No response

Additional context

Goal

The goal is to make the http-client module compatible with Android by:

  1. Decoupling the HTTP client implementation so it is not hardcoded to the JDK client.
  2. Providing an Android-compatible HTTP client implementation.
  3. Fixing the Jackson parsing issues for records on Android.
Code of Conduct
  • I agree to follow this project's Code of Conduct
Lingua principale
Java
Stelle
504
Fork
184
Merge medio
1g 13h
PR unite (30g)
31

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di a2aproject/a2a-java

Tutte le issue di a2aproject/a2a-java

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.