今天开发中碰到一个需求就是编码集转换,android下搜索了一把大家都说用iconv转换编码然后我又去JNI下看了下有没有这个头文件然后搜索发现是有但是android 28的版本才能用,做App都知道要兼容6.0的版本然后只能再次搜索 返现iconv这个是个开源库,然后找到源码也顺利下载下来了,网上教程很多我也是看着教程编译的 天下文章一大抄根本没有例子或编译成功.so提供出来只说步骤,C++或C的编译大家都懂得一个问题解决半天一天的,还有就是很多人提供的是Linux下的编译,他妈的我想说我们在windows下编一个库有这么难吗?我就不装虚拟机在windwos转换 折腾了两天 NDK重新装过各种折腾最后还是顺利编译通过,想想这两天的苦逼样在忙也要把这个分享出来上干货以下就是我在windows下用NDK编译通过的源码上传到码云:
libiconv-1.16_for_-android_-ndk:https://gitee.com/qhs1573/libiconv-1.16_for_-android_-ndk.git
源码下载下来后安装NDK,然后配置环境变量进入到jni目录下面直接执行
ndk-build -B V=1
然后坐等编译成功,成功后下次编译是把-B去掉这样编译快点。编译不通过的可以留言联系我可以指导 我这边是编译没问题的,我把编译成功的.so也放上去了实在编译不通过的可以直接用我编译好的.so,因为我不敢保证你的电脑上能编译通过。
最后我想吐槽下有些人编译通过或者例子上传到某地收高积分的真缺德,源码是开放的你就折腾了编译通过而已发出来收高积分。鄙视 鄙视 鄙视!