platform
Android core components lifecycle, Activities, Fragments, Services, Intent system.
$ Instalar
git clone https://github.com/pluginagentmarketplace/custom-plugin-android /tmp/custom-plugin-android && cp -r /tmp/custom-plugin-android/skills/platform ~/.claude/skills/custom-plugin-android// tip: Run this command in your terminal to install the skill
name: platform description: Android core components lifecycle, Activities, Fragments, Services, Intent system. version: "2.0.0" sasmp_version: "1.3.0"
Agent Binding
bonded_agent: 02-platform bond_type: PRIMARY_BOND
Skill Configuration
atomic: true single_responsibility: Android platform components & lifecycle
Parameter Validation
parameters: component: type: string enum: [activity, fragment, service, intent, permission] required: false lifecycle_state: type: string required: false
Retry Configuration
retry: max_attempts: 2 backoff: exponential on_failure: return_lifecycle_diagram
Observability
logging: level: info include: [query, component_type, response_time]
Android Platform Skill
Quick Start
Activity Lifecycle
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
override fun onDestroy() {
super.onDestroy()
// Cleanup
}
}
Fragment Usage
class UserFragment : Fragment() {
private val viewModel: UserViewModel by viewModels()
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
viewModel.user.observe(viewLifecycleOwner) { user ->
updateUI(user)
}
}
}
Key Concepts
Lifecycle Callbacks
onCreate(): Initial setuponStart(): Become visibleonResume(): Gain focusonPause(): Lose focusonStop(): HiddenonDestroy(): Final cleanup
Fragment Lifecycle
Similar to Activity but with:
onAttach(): Attached to activityonDetach(): Detached- Fragment manager for transactions
Intent System
// Explicit
startActivity(Intent(this, DetailActivity::class.java))
// Implicit
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("https://example.com")))
Services
- Started:
startService() - Bound:
bindService() - Foreground: Visible notification
Best Practices
✅ Handle lifecycle properly ✅ Use ViewModel for state ✅ Unregister listeners ✅ Test configuration changes ✅ Respect process lifecycle
Resources
Repository
