Separate an agent framework from the model and its deployment.
1. Agent responsibilities
An agent combines instructions, model access, tool definitions and execution state. ADK provides orchestration components; it does not guarantee that a model chooses correct actions.
2. JVM versus Android
Start with the Kotlin JVM quickstart to learn the API. Android uses a separate runtime artifact and lifecycle concerns. Do not assume a server dependency can simply be copied into an APK.
3. Workflow versus autonomy
A fixed workflow chooses its transitions in code. A model-driven agent chooses among allowed actions. Use the simpler workflow when the task sequence is known.
Worked scenario
A support router with three fixed categories may work as a classifier. An agent becomes useful when it must decide which lookup is needed before routing.
Apply it
Draw a fixed triage workflow and an agent version, identifying which decisions require model reasoning.
Check your understanding
You can justify the agent loop rather than adding one by default. Explain the decision and show evidence from your implementation or design. If you cannot demonstrate it yet, revisit the relevant section before continuing.