失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Android studio集成云视讯SDK 遇到的问题及解决办法

Android studio集成云视讯SDK 遇到的问题及解决办法

时间:2022-06-30 05:07:47

相关推荐

Android studio集成云视讯SDK 遇到的问题及解决办法

Android Studio集成云视讯SDK在云视讯的开发者中心内有集成开发文档,但有一些问题我是在自己集成的过程中发现的,还询问了云视讯相关的工作人员得以解决。

我集成的是云视讯的多媒体业务,提交的是 《测试环境证书-SDKAPI联调管理》,在sdk测试过程(APP运行过程)中,InitActivity需要选中"测试环境"的checkbox。企业开发应该是有相应的《生产环境证书-SDKAPI联调管理》。

先说一下让SDK正常运行的操作步骤(要直接集成SDK的请直接在下边找集成SDK过程):

官网:https://uc./

1、注册登录后,点击开发者中心,客户端集成,Android , SDK下载,然后下载最新版本的SDK即可

2、点击开发者中心,融合视频语音会议,申请指南,就会看到如下这段话,照做就行,一般需要等待几天就会有回复。

“下载《SDKAPI联调管理模板.xlsx》并按要求填写。填写项目基本信息及功能需求。将填写好的《SDKAPI联调管理模板.xlsx》邮件发送至云视讯开发者公共邮箱 YSX-develop@ 。”

3、点击开发者中心,客户端会议,API文档,虚拟账号接入指引,可以看到下方有虚拟账号接入指引的pdf文档,按照pdf文档操作,获取到token。

注:

1、在sdk测试过程(APP运行过程)中,InitActivity点击”下一步“之后,会进入到LoginActivity,这个页面需要输入账号密码,因为我是测试环境,所以没有账号密码,测试环境只能通token登录。

2、需在《SDKAPI联调管理》内加入白名单的公网IP下进行操作,在公网IP下通过POST请求获取虚拟手机号、通过GET请求获取token,先通过POST请求获取虚拟手机号,再使用虚拟手机号获取token,token有时效,失效后重新获取一下token就行了。

3、POST请求,请求URI中的host,也就是域名,根据你是测试环境证书还是生产环境证书来添加:

请求的参数是JSON串,其中JSON串中的sign按照pdf文档生成,

其中生成虚拟手机号的sign需要的参数有如下:

待生成虚拟手机号成功后,须通过虚拟手机号生成token,生成token的sign所需要的参数有mobile(虚拟手机号),timestamp和identity三个,如下(也就是你获取token需要请求的参数是什么,你就用你请求的参数来生成获取token的sign):

到现在,你应该拿到了你的token,然后将APP_KEY和APP_SECRET填入到下载好的sdk中就能运行了

好了现在能运行了,下边我来讲下集成SDK过程

集成SDK过程

1、将提供的三个so文件、ysxcommonlib.aar、ysxmobilertc.aar和ysxsdk.aar,放到工程的lib目录下

2、在app的build.gradle文件中配置文件:

(1)

//官方标注的四个:implementation(name: 'ysxcommonlib', ext: 'aar')implementation(name: 'ysxmobilertc', ext: 'aar')implementation(name: 'ysxsdk', ext: 'aar')implementation 'androidx.recyclerview:recyclerview:1.0.0'//下边是我对比sdk添加的:implementation 'io.jsonwebtoken:jjwt:0.9.0'implementation 'com.android.support:multidex:1.0.3'implementation fileTree(include: ['*.jar'], dir: 'libs')implementation 'androidx.legacy:legacy-support-v4:1.0.0'implementation project(':imlibrary') //用于IM集成,需要在IM集成完再添加

(2)

repositories {google()mavenCentral()flatDir {dirs 'libs'}}

我在gradle中差不多只加了上边这些,官方sdk中还有一句,如下图,各位根据情况自行添加

ndk {abiFilters "armeabi-v7a","arm64-v8a","x86" }

3、将imlibrary 即IM通讯集成到自己的项目中,操作步骤请跳转

IM集成

4、Mainifest.xml文件权限(只是提醒一下):

<!-- sdk所需权限 --><uses-permission android:name="android.permission.DISABLE_KEYGUARD" /><permissionandroid:name="${applicationId}.permission.MIPUSH_RECEIVE"android:protectionLevel="signature" /><uses-feature android:glEsVersion="0x00020000" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.READ_PHONE_STATE" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- Mi推送配置 start --><uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.RECORD_AUDIO" /><uses-permission android:name="${applicationId}.permission.MIPUSH_RECEIVE" />

5、这个也要注意一下

注:

1、三个so文件所在目录:

2、build.gradle文件配置(按照sdk来):

(1)recyclerview 的版本我是按照sdk来的

implementation 'androidx.recyclerview:recyclerview:1.0.0'

(2)androidx的版本要设置为1.0.0(按照sdk来),因为1.1.0把localbroadcast给废了,我运行会报错,没有加“implementation ‘androidx.legacy:legacy-support-v4:1.0.0’ ”我运行也是报错,报错截图如下

报错截图如下:

3、如果报以下错误,说明没有集成IM(即 imlibrary 未导入)

下边来讲下如何集成IM

IM集成过程

IM集成完成啦~

到此,集成到自己项目里的sdk应该可以运行了,希望本篇文章可以帮助到大家(✪ω✪)

如果觉得《Android studio集成云视讯SDK 遇到的问题及解决办法》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。