明天和大家分享一下Flutter中集成百度语音辨认Android端的过程,供大家进行参考。

既然是Flutter集成,那首先就要创立一个Flutter我的项目,这个就不认真讲了,能够参考Flutter中文的创立我的项目流程

@[toc]

一、百度语音官网注册利用信息

1.注册百度账号

首先注册登陆百度AI开发平台-语音辨认,关上控制台找到并点击”语音技术“一栏

2.创立注册利用信息

填写利用名称(名称随便),类别随便,抉择Android并填写Android包名,点击创立利用就创立实现了。

3.查看利用信息

点击第1步中的治理利用,能够看到你创立的所有利用列表,能够看到创立利用的AppID,API Key, Secret Key等信息,这些都须要在我的项目进行配置的。

4.下载SDK

百度语音辨认SDK

二、创立一个我的项目的Library

1.应用Android Studio关上我的项目Android文件

2.创立Library, File->New Module->抉择Android Library,填写name(asr_plugin)

3.增加语音辨认sdk

在asr_plugin中创立一个libs文件夹,复制(解压下载的百度语音辨认sdk文件/core/libs/*.jar)到刚创立的libs下

4.增加so文件

复制(解压sdk文件/core/main/jniLibs)复制到asr_plugin/src/main下,删除上面的armeabi,(因为Flutter没有armeabi的so),删除应用不到的库文件,保留如下图中文件即可

5.AndroidManifest.xml配置权限及我的项目的APPID,API_KEY以及Secret_Key

6.在我的项目Android/app目录下的build.grade文件中增加插件依赖

三.Android实现百度语音的辨认性能

1.Library中实现百度辨认性能

2.library的build.gradle中增加flutter依赖

def localProperties = new Properties()def localPropertiesFile = rootProject.file('local.properties')if (localPropertiesFile.exists()) {    localPropertiesFile.withReader('UTF-8') { reader ->        localProperties.load(reader)    }}def flutterRoot = localProperties.getProperty('flutter.sdk')apply plugin: 'com.android.library'apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"flutter {    source '../..'}

3.我的项目app/build.gradle中增加如下代码,确保app与library中增加flutter.so 不抵触

defaultConfig中增加ndk{            abiFilters "arm64-v7a","arm64-v8a","x86_64","x86"        }//百度语音集成增加    packagingOptions {        // 确保app与asr_plugin都依赖的libflutter.so merge时不抵触@https://github.com/card-io/card.io-Android-SDK/issues/186#issuecomment-427552552        pickFirst 'lib/x86_64/libflutter.so'        pickFirst 'lib/x86/libflutter.so'        pickFirst 'lib/arm64-v8a/libflutter.so'        pickFirst 'lib/arm64-v8a/libapp.so'        pickFirst 'lib/armeabi-v7a/libapp.so'    }

在我的项目的MainActivity中进行注册

四、Dart端实现语音性能治理

语音辨认治理类

性能页面应用

可能遇到的问题

1、辨认语音,而且报错语音辨认谬误,-3004,4004
解决:返回百度语音官网控制台,支付一下额度,才能够进行失常测试

Demo

Flutter仿携程APP集成百度语音辨认

感觉文章不错的,给我点个赞哇,关注一下呗!
技术交换可关注公众号【君伟说】,加我好友一起探讨