From 0b95c8035610d7cd4d465a7f868f5b2ea211b44c Mon Sep 17 00:00:00 2001 From: Thibault Deckers Date: Mon, 11 Mar 2024 23:02:00 +0100 Subject: [PATCH] #782 dispose flutter engine from analysis worker --- .../kotlin/deckers/thibault/aves/AnalysisWorker.kt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/android/app/src/main/kotlin/deckers/thibault/aves/AnalysisWorker.kt b/android/app/src/main/kotlin/deckers/thibault/aves/AnalysisWorker.kt index b0880ca04..ce05c1da3 100644 --- a/android/app/src/main/kotlin/deckers/thibault/aves/AnalysisWorker.kt +++ b/android/app/src/main/kotlin/deckers/thibault/aves/AnalysisWorker.kt @@ -45,11 +45,22 @@ class AnalysisWorker(context: Context, parameters: WorkerParameters) : Coroutine workCont = cont onStart() } + dispose() return Result.success() } + private suspend fun dispose() { + Log.i(LOG_TAG, "Clean analysis worker $id") + flutterEngine?.let { + FlutterUtils.runOnUiThread { + it.destroy() + } + flutterEngine = null + } + } + private fun onStart() { - Log.i(LOG_TAG, "Start analysis worker") + Log.i(LOG_TAG, "Start analysis worker $id") runBlocking { FlutterUtils.initFlutterEngine(applicationContext, SHARED_PREFERENCES_KEY, CALLBACK_HANDLE_KEY) { flutterEngine = it