NDK项目怎么才能使用iconv
最近本人的一个ndk项目中出现了数据传输过程中编码不一致导致的乱码(我开发客户端,而服务端不归我管),因此打算使用iconv.h进行转换,但提示
./gui/renderware_imgui.cpp:116:15: error: use of undeclared identifier 'iconv_open'
iconv_t cd = iconv_open(to_charset, source_charset);
^
./gui/renderware_imgui.cpp:128:6: error: use of undeclared identifier 'iconv'
if (iconv(cd, &inbuf, &inlen, &poutbuf,&outlen) == -1)
^
./gui/renderware_imgui.cpp:132:2: error: use of undeclared identifier 'iconv_close'
之后我打开了NDK r17b的iconv.h,发现了这个
#if __ANDROID_API__ >= 28
iconv_t iconv_open(const char* __src_encoding, const char* __dst_encoding) __INTRODUCED_IN(28);
size_t iconv(iconv_t __converter, char** __src_buf, size_t* __src_bytes_left, char** __dst_buf, size_t* __dst_bytes_left) __INTRODUCED_IN(28);
int iconv_close(iconv_t __converter) __INTRODUCED_IN(28);
#endif /* __ANDROID_API__ >= 28 */
本人的项目sdk api为14 他却要了28(Android 9),但我却不能要求也做不到让所有用户使用Android 9,请问该怎么解决。
NDK版本:r17b
SDK API:28
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
请问你解决了,我也遇到这个问题,想请教一下
请问你解决了吗,我也遇到这个问题