hwh97 5 роки тому
батько
коміт
4352fe69a2

+ 10 - 8
android/src/main/kotlin/cn/i2edu/speech_plugin/SpeechPlugin.kt

@@ -175,16 +175,18 @@ class SpeechPlugin : MethodCallHandler {
                                 val resultParser = XmlResultParser()
                                 val parseResult = resultParser.parse(builder.toString()) as ReadSentenceResult
                                 val formatWords = arrayListOf<SimpleWord>()
-                                for (sentence in parseResult.sentences) {
-                                    val words = sentence.words
-                                    for (word in words) {
-                                        // 过滤掉sil、 silv 表示静音, fil 表示噪音
-                                        if (word.content == "sil" || word.content == "silv" || word.content == "fil")
-                                            continue
-                                        formatWords.add(SimpleWord(word.content, word.total_score))
+                                if (parseResult.sentences != null) {
+                                    for (sentence in parseResult.sentences) {
+                                        val words = sentence.words
+                                        for (word in words) {
+                                            // 过滤掉sil、 silv 表示静音, fil 表示噪音
+                                            if (word.content == "sil" || word.content == "silv" || word.content == "fil")
+                                                continue
+                                            formatWords.add(SimpleWord(word.content, word.total_score))
+                                        }
                                     }
                                 }
-
+                                Log.d(TAG, parseResult.toString());
                                 invokeEvaluatorResult(index, score = (if (parseResult.is_rejected) null else parseResult.total_score), integrityScore = if (parseResult.is_rejected) null else parseResult.integrity_score,
                                         accuracyScore = if (parseResult.is_rejected) null else parseResult.accuracy_score, fluencyScore = if (parseResult.is_rejected) null else parseResult.fluency_score,
                                         words = JSON.toJSONString(formatWords))