agentsclimarketplace

Android sdk

Skill G1Joshi/Agent-Skills/skills/mobile/android-sdk

A comprehensive skill catalog for AI agents

Install
npx -y skills add G1Joshi/Agent-Skills --skill android-sdk

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 10 stars10 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Android SDK development tools. Use for native Android.

SKILL.md

3.4 KB, as published. Nobody here has run it

Android SDK

The traditional Android development toolkit (Views, Activities, Fragments, XML) using Kotlin/Java. Essential for maintaining the vast ecosystem of pre-Compose applications.

When to Use

  • Maintaining legacy Android applications (Views/XML).
  • Building features requiring low-level system interactions not yet wrapped by Compose.
  • Using libraries that strictly require Fragment/View interoperability.

Quick Start

// build.gradle.kts: viewBinding = true

class MainActivity : AppCompatActivity() {
    private lateinit var binding: ActivityMainBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        binding.myButton.setOnClickListener {
            Toast.makeText(this, "Clicked!", Toast.LENGTH_SHORT).show()
        }
    }
}

Core Concepts

Lifecycle

Understanding the complex lifecycle of Activities (onCreate, onPause, onDestroy) and Fragments is the hardest but most important part of legacy Android dev to prevent crashes and data loss.

Intents

The messaging object used to request an action from another app component (starting activities, services, broadcasting).

XML Layouts

Defining UI structure in XML files (res/layout/activity_main.xml).

Common Patterns

View Binding

Replaces findViewById. Generates type-safe binding classes for XML layouts.

  • Null Safety: View references are nullable if they verify across configs.
  • Type Safety: No casting required.

Repository Pattern (Clean Architecture)

separating data sources (Room, Retrofit) from UI logic (ViewModel).

Coroutines (Structured Concurrency)

Replacing AsyncTask and Threads.

  • Use lifecycleScope and viewModelScope to automatically cancel tasks when the UI is destroyed.

Best Practices

Do:

  • Use ViewBinding instead of findViewById or Kotlin Synthetics (Deprecated).
  • Use Coroutines for background tasks.
  • Use Dependency Injection (Hilt) to manage complex graphs.
  • Handle Configuration Changes (Rotation) using ViewModels.

Don't:

  • Don't block the Main Thread (ANR Risk).
  • Don't put business logic in Activities/Fragments (God Class anti-pattern).
  • Don't ignore Fragment lifecycle (don't access views in onDestroyView).

Troubleshooting

ErrorCauseSolution
ANR (App Not Responding)Blocking main thread for >5s.Move work to Dispatchers.IO (Coroutines).
IllegalStateException: Fragment not attachedAccessing context after detachment.Check isAdded or use MainScope safely.
Memory LeakHolding Activity reference in Singleton/Background.Use WeakReference or Application Context.

References

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.