Incomplete or Non-Specific Accessible Descriptions

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

Symptom

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.

Rationale

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.

Examples

XML Layout Example

<!-- 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" -->

Kotlin Code Example

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
    }
}

GitHub issues under this tag