如何使用 TextClassificationManager 检测语言

How to use TextClassificationManager to Detect language

TextClassificationManager 可从 API-26 获得。它的 public 方法可用于对文本进行分类。 我的要求是我需要从离线文本中检测语言。 TextClassificationManager 也有 detectLanguages() 方法,但它是隐藏的。 我可以使用 TextClassificationManager 来检测语言吗?

我搜索了一下,发现 This Project 通过 Reflection 使用 TextClassificationManager。但它抛出 NoSuchMethodErrror 和 Returns .. 因此,如果有人为此目的使用 TextClassificationManager 可以帮助我。

通过反射使用隐藏函数是一个错误的决定。您永远无法知道该功能是否存在并且可用,因此您必须准备一个回退机制。

对于 Android SDK 26-27 您可以尝试使用此 Android lib 项目 - https://github.com/rmtheis/language-detection 但请注意它不再维护,因此请将其用于您自己的研究但是将它用于生产或在 Google Play 中发布的应用程序可能不是一个好主意。