android-studio - 如何显示从 ML Kit 下载的模型的进度
问题描述
我正在使用谷歌数字墨水进行手写识别。需要下载一次的模型大小为 20MB,下载需要一些时间。有没有办法使用进度条显示下载进度?
我的代码如下:
fun download(context: Context) {
var modelIdentifier: DigitalInkRecognitionModelIdentifier? = null
try {
modelIdentifier =
DigitalInkRecognitionModelIdentifier.fromLanguageTag(lang)
} catch (e: MlKitException) {
// language tag failed to parse, handle error.
}
model = DigitalInkRecognitionModel.builder(modelIdentifier!!).build()
val remoteModelManager = RemoteModelManager.getInstance()
remoteModelManager.download(model, DownloadConditions.Builder().build())
.addOnSuccessListener {
Log.i("StrokeManager", "Model downloaded")
Toast.makeText(context, "Model Downloaded", Toast.LENGTH_SHORT).show()
}
.addOnFailureListener { e: Exception ->
Log.e("StrokeManager", "Error while downloading a model: $e")
Toast.makeText(context, "Model Download Failed", Toast.LENGTH_SHORT).show()
}
}
解决方案
此刻,download API 并没有报告确切的下载进度,例如 10%、20%、50%……如果我们看到更多的兴趣,我们会考虑添加这样的支持。
顺便说一句,这是 ML Kit github repo 中提出的相同问题:https ://github.com/googlesamples/mlkit/issues/165
推荐阅读
- html - 内联视频 src 媒体查询如何不起作用?
- lottie - 如何在 Lottie 动画开始播放之前消除延迟
- python - 在aiogram python中更新键盘
- excel - 消息框需要帮助
- typescript - 属性“baz”没有初始化程序,但通过构造函数中的方法调用完成
- r - 根据组/条件计算不同的标准误差
- java - 如何知道 log4j 何时创建了新的日志文件?
- spring - Spring - 如果模拟工作正常,如何@Autowired jpa 存储库
- python - 运行一个后台子进程,当它的父进程运行时它不会死掉(W10)
- amazon-web-services - Jenkins EC2 插件:实例未启动