| Id | IncompleteorNonSpecificAccessibleDescriptions |
| Summary | Alternative texts are too generic or incomplete, reducing understanding of the element’s role |
| Severity | N/A |
| Category | Assistive Technologies / Content Descriptions |
| Affects | Resource files and Kotlin and Java files |
| Implementation | AI or other solutions could be considered to potentially find incomplete or non-specific content descriptions, since the context of the content is crucial |
android:contentDescription attribute exists but provides
incomplete or insufficient detail compared to the visual information
available, lacking context or important details that would help users
understand the full meaning or status.
Forces assistive technology users to make assumptions about missing context or functionality, potentially leading to confusion about current state, available actions, or important information that sighted users can infer visually.
<!-- Play button with insufficient detail -->
<ImageButton
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_play"
android:contentDescription="Play" />
<!-- Too vague - doesn't specify what will be played -->
<!-- Better: "Play Song Title by Artist Name" -->
class MusicPlayerActivity : AppCompatActivity() {
private fun updatePlayButton(currentSong: Song) {
val playButton = findViewById<ImageButton>(R.id.play_button)
// Insufficient detail - user doesn't know what will play
playButton.contentDescription = "Play"
// Better approach with context:
// playButton.contentDescription = "Play ${currentSong.title} by ${currentSong.artist}"
// This provides specific information about what action will occur
}
}