fix(build): 修复ObjectBox库的release依赖配置

- 取消注释并激活app模块中ObjectBox的releaseImplementation依赖
- 取消注释并激活lib_face模块中ObjectBox的releaseImplementation依赖

fix(ui): 修复异常时Toast显示的线程调度问题

- 在CollectFragment中使用lifecycleScope切换到主线程显示Toast

refactor(main): 优化图像处理流程中的协程使用

- MainActivity中将uri2File调用放入IO线程的lifecycleScope中
- 使用withContext切换至IO线程异步获取Bitmap后再进行处理

chore(objbox): 移除未使用的ObjectBoxLiveData导入声明
This commit is contained in:
mazengfei
2026-07-17 09:53:43 +08:00
parent 28a475ca43
commit 76f60f8ee7
5 changed files with 14 additions and 9 deletions
@@ -1091,9 +1091,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
if (lastPhotoUri == null) {
return
}
uri2File(lastPhotoUri!!) { imageFile, imageVector ->
runBlocking {
uploadCollectFoodPics(foodInfo, imageFile, imageVector)
lifecycleScope.launch(Dispatchers.IO) {
uri2File(lastPhotoUri!!) { imageFile, imageVector ->
runBlocking {
uploadCollectFoodPics(foodInfo, imageFile, imageVector)
}
}
}
} catch (e: Exception) {
@@ -1282,9 +1284,10 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
startTime = System.currentTimeMillis()
log("registerDataChange photoUri = ${photoUri.path}")
// viewModel.getIdentifiedFoodList()
ImageUtil.uriToBitmap(this@MainActivity, photoUri)?.let { bitmap ->
queryFoodData(bitmap)
val bitmap = withContext(Dispatchers.IO) {
ImageUtil.uriToBitmap(this@MainActivity, photoUri)
}
bitmap?.let { queryFoodData(it) }
}
private suspend fun queryFoodData(bitmap: Bitmap) {