Repository: flutter
Issue: Android support for link to announce as link and not as button in A11Y
Labels: c: new feature,platform-android,framework,a: accessibility,c: proposal,P1,team-accessibility,triaged-accessibility

<!-- Thank you for using Flutter!

     If you are looking for support, please check out our documentation
     or consider asking a question on Stack Overflow:
      * https://flutter.dev/
      * https://api.flutter.dev/
      * https://stackoverflow.com/questions/tagged/flutter?sort=frequent

     If you have found a bug or if our documentation doesn't have an answer
     to what you're looking for, then fill out the template below. Please read
     our guide to filing a bug first: https://flutter.dev/docs/resources/bug-reports
-->

## Use case

<!--
     Please tell us the problem you are running into that led to you wanting
     a new feature.

     Is your feature request related to a problem? Please give a clear and
     concise description of what the problem is.

     Describe the alternative solutions you've considered. Is there a package
     on pub.dev/flutter that already solves this?
-->

On the current documentation of Flutter for [link property](https://api.flutter.dev/flutter/semantics/SemanticsProperties/link.html) of [SemanticsProperties class](https://api.flutter.dev/flutter/semantics/SemanticsProperties-class.html), the links were read as button not as links.

> If non-null, indicates that this subtree represents a link.
> 
> iOS's VoiceOver provides users with a unique hint when a link is focused. **Android's Talkback will announce a link hint the same way it does a button**.

As documented in the [Android Accessibility Help page](https://support.google.com/accessibility/android/answer/6378148?hl=en), the design now allows links and hyperlinks to be read as links:

> ### Design
> 
> When using [TalkBack](https://support.google.com/accessibility/android/answer/6283677) to speak text containing a hyperlink, a well implemented user interface produces an auditory icon as the hyperlinked text is spoken, and the linked text appears in the "Links" sub-menu of TalkBack's [local context menu](https://support.google.com/accessibility/android/answer/6007066).

Previously, a [GitHub ticket](https://github.com/flutter/flutter/issues/60039) was filed regarding this issue but was close because it was WAI per [this comment](https://github.com/flutter/flutter/issues/60039#issuecomment-648478141):

> This was addressed in another issue also for `customer: money (g3)` : https://github.com/flutter/flutter/issues/36306
> Link was specifically used as a button since android doesn't offer a link option in the a11y class name.
> Further reference:
> 
> * https://github.com/flutter/engine/pull/12453/files
> * https://developer.android.com/reference/android/widget/Button
> 
> I think this is WAI since we intentionally did this because Android doesn't have an explicit 'link'.

## Proposal

<!--
     Briefly but precisely describe what you would like Flutter to be able to do.

     Consider attaching something showing what you are imagining:
      * images
      * videos
      * code samples

     Does this have to be provided by Flutter directly, or can it be provided
     by a package on pub.dev/flutter? If so, maybe consider implementing and
     publishing such a package rather than filing a bug.
-->

Support to announce links and hyperlinks as links not as buttons in A11Y.