How to change Android Talkback in case of App name

戏子无情 提交于 2020-01-01 08:45:25

问题


The App I am working on has a name which is mispronounced by the talkback. I am able to fix this within the app by changing the spelling. But if I change the spelling in the android:label in the manifest, it is misspelled on the app icon on the phone. Does anyone have a way around this?


回答1:


There is no way to do this. The fix would be for the LaunchScreen to have the ability to read an alternative label, and place it in the content description for the textView that represents your application.

TalkBack reads back things like this.

  • If a contentDescription is available this is read off.
  • If the view has "text" this is read off.
  • All other cases the view is not accessibility focused.

So, what is happening is TalkBack is grabbing onto the "text" of your view as provided by the name of the application. The Launch Screen does not provide a mechanism for overriding the contentDescription, and therefore will only ever read your text. This isn't a problem with your app, it is a problem with the Home Screen app. You may be able to fix this for users with different Home Screen apps, but there is absolutely no universal solution, and certainly no solution for the standard LaunchScreen application provided on stock Motorola, Samsung, and Nexus devices (most likely others as well, but I don't own any of them).




回答2:


In the case that talkback is not pronouncing an acronym correctly, attempting to read it as a word rather than individual letters, you can use zero-width non-breaking space characters \ufeff to separate the letters invisibly.

Suppose you have the word CAT but you want it pronounced C.A.T.:

<string name="app_name">C\ufeffA\ufeffT</string>

It will still appear as CAT and won't be broken for line-wrapping.

However, your users will not be able to search for the app by typing CAT anymore.




回答3:


You could change the text read by TalkBack programmatically with:

getWindow().getDecorView().setContentDescription("Name as pronounced")



来源:https://stackoverflow.com/questions/17351270/how-to-change-android-talkback-in-case-of-app-name

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!