NDK之我淌过的坑

帮朋友导一个c艹项目的一堆c艹文件,导入Android项目。

不会c艹,于是查阅点资料,趟了很多坑。放出来,初学者以后别走坑。

c艹中,这种赋值会报错,类转换异常,但改为insert之后就不报错了。如下所示,注释掉的是之前的,insert是我自己写的,这样写就不会报错了。
这里写图片描述

C++11的字符串操作,android的ndk不支持,需要将字符串转换为一个c形式的字符数组,然后用字符操作:
这里写图片描述

to_string也不行,得这么写:
这里写图片描述

另外出现了UnsatisfiedLinkError: No implementation found for java.lang。。。。。。。。。。。。。。。。。。。。。。。。。异常,我这里不是因为包名写错之类的,是因为c艹的类外实现,as在编译的时候,会认为我们的方法没有被实现。所以报这个异常。

还有一个,我用cmake生成的so文件都在原来的cpp文件前面加了一个lib。
我在其他项目导入这个so的时候,用System.LoadLibrary(“”);方法的时候,里面的名字不能写这个lib否则会找不到,而且在报错信息中写的是找不到liblibxxxx.so。说明它自动给你加了一个lib了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值