ankidroid / Anki-Android

AnkiDroid: Anki flashcards on Android. Your secret trick to achieve superhuman information retention.
GNU General Public License v3.0
8.4k stars 2.18k forks source link

Improve TTS Error resolution for: `APP_MISSING_VOICE` #16825

Closed david-allison closed 1 day ago

david-allison commented 1 month ago

https://www.reddit.com/r/Anki/comments/1ekpa9h/comment/lgm4w2c/


Good first issue:


References:

Rohanraj123 commented 1 month ago

@david-allison I went through the code and found that there is already a place holder for future decisions. Screenshot from 2024-08-06 06-23-19

Hence, We can just change the message type from the developer string to a valuable message such as : --> {lan}is not supported by the built-in TTS engine. Please install an external TTS engine or choose a supported language.

Letme know if thats okay I would start working on this issue.

david-allison commented 1 month ago

I don't think we want a longer message here, we want a "help" link

Users don't have much time to read snackbars

If we are updating the message, listing the language & voice may be possible, but this could be a large string

Rohanraj123 commented 1 month ago

Okay I successfully regenerated the issue. Basically the issue is not when you make a card and enable the tts support from ankidroid app. It shows a nice snackbar with help link for that to move to the article. But problem arises when we make card in Anki Desktop and sync it to the mobile and that language of tts is not supported in Ankidroid app due to tts engine incompatibility.

Solution is simple then, we can just show short and crisp snack bar message just to let user know what has happened and then give a Help link section after the message. As we are doing for the normal in app tts support error message. Screenshot_20240807-124128

Message can be : TTS Error : Missing language support. HELP Same article section can help the user to resolve this error as well.

david-allison commented 1 month ago

That looks like a great first step

It feels like an 'end goal' would be a dialog with:


I'd be open to either:

    1. A PR with your snackbar improvement
    2. a linkable page explaining the common issues and how to fix them
  1. The above, plus using the aforementioned dialog, with better TTS diagnostic information
Rohanraj123 commented 1 month ago

Perfect, I start working on the second option i.e dialog implementation. It might take some time, Please assign me this issue.

david-allison commented 1 month ago

Lovely! Please feel free to come to Discord and ask for advice if you need it

As a few hints: