Qt on Android调用so库的问题

3 篇文章 1 订阅
1 篇文章 0 订阅

一:桌面引用dll库的一般方法:

在windows在用QrCreaotr开发dll库并使用的一般做法:

 

 

两个工程的目录结构:

 

其中include文件夹内存放的是HelloWorld工程的头文件

 

Libs文件夹内存放的是HelloWorlddll文件。


 

---------------------------------------------------------

/

-----------目录结构介绍完毕--------------------

 

 

 

在PluginTest工程中调用的时候很方便:

Pro文件中引用头文件和库文件(这个地方的引用只是编译时候的需要)

 

在main函数中引入头文件并创建HelloWorld的对象

 

HelloWorld类中print函数的实现:

 

打印结果:

 

 

完成

 

==================================================================

 

 

 

 

二、Qt on AndroidAndroid模式中使用so库文件的问题:

把上面的模式转换到Android模式下使用效果:

1、把HelloWorld的工程切换成Android模式编译,生成HelloWorld.so的动态库(Android属于也是Linux系统),把动态库也拷贝到libs目录下。

2、把PluginTest工程也切换成Android模式,代码不动。

3、编译通过

4、运行...报错,如下图:


 

 

原因:在生成APK文件时并没有把对应的HelloWorld.so库拷贝到apk内部,缺少HelloWorld.so,生成的APK文件无法运行。

三:解决方法:(让生成的so文件在Android模式下可以使用)

 如下图:


添加的库的作用:在qt编译完成生成apk文件时,会把添加到这里所有的库文件都打包进apk文件中。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值