Agent Skills: Android Networking Standards

Integrate Retrofit, OkHttp, and Kotlinx Serialization for type-safe API communication in Android. Use when building API clients, adding interceptors, or configuring network security. (triggers: **/*Api.kt, **/*Service.kt, **/*Client.kt, Retrofit, OkHttpClient, @GET, @POST)

UncategorizedID: hoangnguyen0403/agent-skills-standard/android-networking

Install this agent skill to your local

pnpm dlx add-skill https://github.com/HoangNguyen0403/agent-skills-standard/tree/HEAD/skills/android/android-networking

Skill Files

Browse the full folder contents for android-networking.

Download Skill

Loading file tree…

skills/android/android-networking/SKILL.md

Skill Metadata

Name
android-networking
Description
"Integrate Retrofit, OkHttp, and Kotlinx Serialization for type-safe API communication in Android. Use when building API clients, adding interceptors, or configuring network security. (triggers: **/*Api.kt, **/*Service.kt, **/*Client.kt, Retrofit, OkHttpClient, @GET, @POST)"

Android Networking Standards

Priority: P0

1. Configure the HTTP Stack

  • Use Retrofit 2 with OkHttp 4 for all backend communication.
  • Use Kotlinx Serialization with @SerialName for JSON field mapping.
  • Implement Certificate Pinning for sensitive production domains.

See setup & wrappers for DTO and API examples.

2. Define API Endpoints

  • All API calls must be suspend functions.
  • Declare endpoints only in the API interface — handle errors in Repository.

See setup & wrappers for API endpoint definitions.

3. Add Cross-Cutting Concerns

  • Use OkHttp Interceptors for Bearer token injection and HttpLoggingInterceptor (debug only).
  • Wrap responses with a Result wrapper or Either in the Repository layer.
  • Define R8/ProGuard rules for Retrofit/OkHttp when isMinifyEnabled = true.
  • Use MockWebServer for unit/integration tests — cover 500, 401, 403 error cases.

Anti-Patterns

  • No Blocking Network Calls: All API functions must be suspend.
  • No Logic in API Interface: Only declare endpoints — handle errors in Repository.
  • No Raw Converter Factory: Explicitly set "application/json" MediaType with kotlinx.serialization.

References