首页 > 其他分享 >Android SDK 遇到的坑之讯飞语音合成

Android SDK 遇到的坑之讯飞语音合成

时间:2024-08-15 09:23:05浏览次数:7  
标签:java app SpeechUtility 之讯飞 Android com android SDK

目录

一、讯飞在线语音合成

二、组件未安装.(错误码:21002)

2.1 Android 10 错误信息

2.2 Android 13 错误信息

三、错误分析

        3.1 没有使用SpeechUtility.createUtility()设置appid

   3.2 没有将libmsc.so放到工程中

往期推荐


一、讯飞在线语音合成

        应用需要做一个语音指引功能,根据调研选择集成讯飞-在线语音合成 Android SDK 文档

        语音合成是将一段文字转换为语音,可根据需要合成出不同音色、语速和语调的声音,让机器像人一样开口说话。

        集成步骤官方文档描述的挺清晰的,直接集成即可。

二、组件未安装.(错误码:21002)

2.1 Android 10 错误信息

loadLibrary msc error:java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.xxxxx-U6Lzsb0J-4ytOTwo5rRkrQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.xxxxx-U6Lzsb0J-4ytOTwo5rRkrQ==/lib/arm64, /data/app/com.xxxxx-U6Lzsb0J-4ytOTwo5rRkrQ==/base.apk!/lib/arm64-v8a, /system/lib64, /system/product/lib64]]] couldn't find "libmsc.so"
init failed
组件未安装.(错误码:21002)
at com.iflytek.cloud.SpeechUtility.<init>(SourceFile:176)
at com.iflytek.cloud.SpeechUtility.createUtility(SourceFile:12)
at com.xxxxx.base.MyApplication.onCreate(MyApplication.java:37)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1190)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6859)
。。。。。               
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1068)

2.2 Android 13 错误信息

loadLibrary msc error:java.lang.UnsatisfiedLinkError: dlopen failed: library "libmsc.so" not found
组件未安装.(错误码:21002)
at com.iflytek.cloud.SpeechUtility.<init>(SourceFile:176)
at com.iflytek.cloud.SpeechUtility.createUtility(SourceFile:12)
at com.xxxxx.base.MyApplication.onCreate(MyApplication.java:37)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1190)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6859)
。。。。。               
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1068)

三、错误分析

        3.1 没有使用SpeechUtility.createUtility()设置appid

         SpeechUtility.createUtility(this, "appid=xxxx");

        在下方还有下载SDK以及Demo

   3.2 没有将libmsc.so放到工程中

        检查上图中这三个地方有没有异常情况。

        ①、未复制.so文件到项目,肯定会报错,找不到文件。

        ②、科大讯飞的语音合成只支持arm,如果使用的x86设备(如模拟器),并在ndk中配置了x86,肯定会报错。错误配置如下:

android {
    ...
    defaultConfig {
        ...
        ndk {
            // 设置支持的SO库架构
            abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86_64', 'x86'
        }
    }
    ...
}

        ③、这里的jniLibs是一个特定的配置,专门用于JNI/NDK库,它告诉Gradle在编译或运行时去哪里查找这些库文件。如果你不告诉Gradle去哪里找,等于没导入.so文件,因此也会报错。

往期推荐

系统架构设计师备考攻略-CSDN博客文章浏览阅读774次,点赞17次,收藏10次。计算机软件资格考试是由国家人力资源和社会保障部、工业和信息化部领导下的国家级考试。软考没有学历、专业、年龄、相关工作经验要求,你可以根据自身选择合适的去报名(也就是说你直接直接报高级),但是一次考试只能报一种。计算机软件资格考试纳入全国专业技术人员职业资格证书制度的统一规划,实行统一大纲、统一试题、统一标准、统一证书的考试办法,每年举行两次。通过考试获得证书的人员,表明其已具备从事相应专业岗位工作的水平和能力,用人单位聘任相应专业技术职务(助理工程师、工程师、高级工程师)。https://shuaici.blog.csdn.net/article/details/140975939Android Studio模拟器(AVD)安装-CSDN博客文章浏览阅读3.2w次,点赞21次,收藏129次。本文详细记录了在Android Studio中安装和使用AVD模拟器遇到的问题及解决方案,包括Error while waiting for device、VT-x disabled in BIOS和无法运行项目等错误。通过检查SDK Tools、更新HAXM、进入BIOS启用VT-x,以及修改项目配置以兼容x86架构,最终成功运行了Android项目。https://shuaici.blog.csdn.net/article/details/118612073

标签:java,app,SpeechUtility,之讯飞,Android,com,android,SDK
From: https://blog.csdn.net/g984160547/article/details/141169429

相关文章

  • Android10.0 最近任务Recents功能分析
    在Android10.0上,Recents功能分布在SystemUI和Launcher3里面集成.一.初始化跟Android8.1类似,先看初始化入口:1.Recents.javaRecents继承SystemUI,进程启动后会在Dependency里面通过@Inject进行初始化,然后在SystemUIService里面调用SystemUIApplication的startServicesIfNee......
  • Android HWUI
    AndroidHWUI(HardwareAcceleratedRenderingEngineforUI)是Android系统中用于处理UI渲染的硬件加速引擎。它的主要作用是利用GPU(图形处理单元)来加速UI的渲染过程,从而提高渲染效率和流畅度。以下是AndroidHWUI工作的主要方式和步骤: 一、基本工作原理传统软件的UI绘制是依靠......
  • Android-代码混淆及字符串加密
    代码混淆使用ProGuard&R8一些参考链接Android混淆,新引入的D8、R8改变了什么?sdk打包必备,proguard混淆规则如何配置开启混淆app/build.gradle.android.buildTypesrelease{minifyEnabledtrue//开启混淆proguardFilesgetDefaultProguardFile('proguard-and......
  • 丢掉数据线,你还会调试Android设备吗?
    ADB(Android Debug Bridge)作为Android开发中非常重要的工具,开发者可以使用ADB设备在电脑上对Android设备进行安装调试应用。通常我们使用ADB调试时需要USB数据线进行连接,当Android设备USB接口出现问题或身边没有USB数据线时,使用WiFi调试Android设备便成为了一种实用的替代方案。......
  • Android中四大组件Acticity面试常问的五道题
    Activity1、A到BActivity过程中生命周期是怎么样的当从ActivityA启动ActivityB时,ActivityA的生命周期会经历以下过程:onPause():ActivityA会暂停,此时它仍然可见,但处于暂停状态,无法与用户交互。onStop():如果ActivityB完全覆盖了ActivityA,那么ActivityA会......
  • 智能小程序 Ray 开发面板 SDK —— 状态管理 SDK 汇总(二)
    Reduxsrc 业务源码目录constant 业务项目常量目录index.ts 常量定义文件devices 智能设备模型目录index.ts 定义并导出智能设备模型schema.ts 当前智能设备DP功能点描述pages 页面目录home 首页index.tsx 首页组件redux Redux目录......
  • Android 10.0 SystemUI下拉状态栏QSTileView去掉着色效果显示彩色图标功能实现
    1.前言在10.0的系统rom定制化开发中,在关于SystemUI的下拉状态栏中QSTileView的背景颜色设置过程中,在由于系统原生有着色效果,导致现在某些彩色背景显示不是很清楚效果不好,所以需要去掉QSTileView的默认着色背景显示原生的彩色背景,接下来就来实现相关功能如图: 2.SystemUI......
  • 【Azure Developer】使用Python SDK去Azure Container Instance服务的Execute命令的疑
    AzureContainerInstance服务介绍Azure容器实例(AzureContainerInstances,简称ACI)是一个无服务器容器解决方案,允许用户在Azure云环境中运行Docker容器,而无需设置虚拟机、集群或编排器。ACI适用于任何可以在隔离容器中操作的场景,包括事件驱动的应用程序、从容器开发管道......
  • Android 13 GMS 内置壁纸
    如图,原生系统上,设备上的壁纸显示系统内置壁纸。如果没有添加内置壁纸,就显示默认的壁纸。点击进去就是预览页面扩展下,默认壁纸在frameworks/base/core/res/res/drawable-sw720dp-nodpi/default_wallpaper.pngframeworks/base/core/res/res/drawable-nodpi/default_wall......
  • RK3399 Android8.1静默安装APK
    在RK3399Android8.1上面,实现APK静默安装功能,下面是我们的测试验试过程:1.在RK3399Android8.1源码目录下生成系统签名KEY:  进入build/target/product/security目录:cdbuild/target/product/security  创建build_system_jks2.sh文件,内容如下:#!/bin/bashecho"生......