安卓工程接第三方SDK遇到回调函数字符串参数乱码的问题
在做《老王麻将》的时候,安卓工程接第三方语音SDK,出现了一个字符串乱码问题,现在总结一下。
-
出现的问题:
- 在对方发送语音的时候,SDK会通过一个接口提醒客户端有语音要去下载,这个时候客户端会传一个存语音的地址给SDK然后开始下载。下载成功之后呢,SDK会回调一个函数,把一些语音文件的具体信息还有之前客户端传入的地址一起回调回来。但是,收到的回调里面,路径字符串是乱码。
SDK接口如下:
//下载语音
virtual YIMErrorcode DownloadFile(XUINT64 messageID, const XCHAR* savePath) = 0;
//下载语音回调
void OnDownload(YIMErrorcode errorcode, std::shared_ptr message, const XString& savePath)override;
排除了编码方式,代码逻辑等问题,对方的技术小哥哥指出,问题在于安卓工程中application.mk的APP_STL配置。
下图是我们安卓项目的application.mk: